Advertisement

To put an engine in a DLL or not?

Started by February 24, 2001 05:11 AM
16 comments, last by Sentinel 23 years, 11 months ago
Well as the title says...??
yes you can, you can put it in a lib as well.
Gee Brain, what we gonna do tonight?
Advertisement
Yes I know, that I can put it in an DLL. But the question is if it pays off...??
Yes, IMO it does pay off.
But it will cost you more time, so if you just want to make a quick demo or something instead of a engine it isn''t neccessary.





ALL YOUR BASE ARE BELONG TO US

INTEL INSIDE: The worlds most widely used warning label.
-------homepage - email
I''d encourage you to use a .dll just to learn how to use them.
How does it pay off? Well, if your program''s a small .exe with a number of .dll''s, you can:
Update the program a little easier/with less downloading.
Only load the .dll''s that you need, saving memory & decreasing load time
Support multiple/diverse configurations

As an example, I''ve seen a number of games with a 3dfx.dll & a ogl.dll & sometimes a dx.dll that they load depending on which kind of rendering subsystem is used. Once .dll''s make perfect sense to you, look into COM


Magmai Kai Holmlor
- The disgruntled & disillusioned
- The trade-off between price and quality does not exist in Japan. Rather, the idea that high quality brings on cost reduction is widely accepted.-- Tajima & Matsubara
Use COM if you use DLLs.

If you don''t know about COM, I think you should learn about it.

DLLs which don''t use COM are not architecture DLLs but rather just that - libraries. You have to design a specific way (the C-OO way) in order to be able to take advantage of DLLs without COM.
VK
Advertisement
I know how to use DLL-s.
I know how to put a class into a DLL, but I haven''t looked on COM yet...
COM is nice if you want to be able to use newer versions of your engine with an older application that uses an older interface.

Just like the DirectX API, where it took a large number of revisions to get anything decent. Every new version of DirectX is backwards compatible through the COM interface. If they wouldn't have done that older games wouldn't work anymore.

But you could also get the design right the first time and don't bother with COM. It just depends on how flexible your engine architecture is.





ALL YOUR BASE ARE BELONG TO US

INTEL INSIDE: The worlds most widely used warning label.




Edited by - Countach on February 26, 2001 3:58:04 AM
-------homepage - email
I also must recommened implementing your engine as a COM object, and storing it in a DLL.

At first I migrated to COM just to avoid DLL-hell (multiple versions of the engine spread all over my drive, the wrong one being used etc etc), but in the end it got me thinking more OOP, which it a good thing..

Cheers!
Well what if I don''t go on DLL-s?

This topic is closed to new replies.

Advertisement