Jump to content
  • Advertisement

Archived

This topic is now archived and is closed to further replies.

SpooKsta

3D Game Engines Help

This topic is 6514 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Despite the nature of this text I''m not trying to trip the reader up, the main focus is 3D Game Engines! Keep that in mind. Ok, first off I am asking the low-down on 3D engines. I''m still confused about game engines, and SDKs, and etc... When a game is written what in... -DirectX:what does it do? is it the 3D engine itself -Genesis3D:does this have its own 3D software based engine and use DirectX/Windows as a translator? or else what? -MASM32:How do I write a 3D game using my own engine and translate those functions to D3D?(MASM32 is ''C'' like.) From what I understand (or don''t) a game engine is created in C using DX8, DX8 uses the video card and VRAM (or HEL/Software) to tranlate geometry? Is this form of translating geometry (e.g. Viewports, WorldMatrix, Projection Matrix, etc...) a unique situation in DX only or is it a standard 3D engine? I know your thinking "What the **** is he talking about?!" What I''m trying to do is figure out the best and most efficient way to make a game "skeleton" to implement my own 3D Engine which can translate to D3D, openGL, or even a new 3D format if I receive the proper information pertaning to the subject. -please correct any faulty associations I have made.

Share this post


Link to post
Share on other sites
Advertisement
Guest Anonymous Poster
well, your post reeks of newbie, but i''ll clarify.

DX is an API, an interface, get it? Your 3d engine will require the "encapsulation" of the Direct3d API if you wish to support Direct3d. Direct3d IS NOT a 3d engine in itself. The engine is your duty, you make the engine using Direct3d. The reasoning behind using a 3d API would clearly be to take advantage of 3d hardware rendering. You could create your own engine entirely by yourself, no OpenGL, no direct3d, but that is probably a slow and rediculous choice now days. A software renderer is just that, a 3d engine with NO HARDWARE RENDERING. Thats why they call it "software rendering". Or in other words you are not using an API to take advantage of hardware rendering. How do you make a software renderer??? well, like any other game. Get access to the video buffer, and draw lines on the screen, but using your own functions and not an api.

As far as translating your engine into d3d? what the heck are you talking about? (hehe, you were right, i was thinking that) In order to make a solid d3d application, i would not recommend creating a software renderer and then trying to retro fit your egine to support hardware rendering. That would be the most rediculous thing i have ever heard of, well, maybe not THE most rediculous. anywho.....

MASM32, what does microsofts assembler have to do with 3d engine coding? MASM does indeed support higher level constructs nowadays you are correct on that matter, however calling assembly language programming ''c'' like is kinda reaching dont ya think? Use C/C++, higher level languages were created to reduce the time consuming process of using each individual machine instruction or assembly coding, and now days, optimizing compilers do a great job of speeding things up. However, if performance becomes an issue, as i doubt it will for you for a great while, then profiling your code and attempting to speed up bottlenecks using assembly language and better coding techniques through rethinking might become an option. If by mentioning MASM32 you wish to imply that you are going to attempt to code a software renderer entirely in assembly language, then, damn bud, power to ya!! I always like to hear of great and exciting projects!!! :-) Well, good luck!!!

Share this post


Link to post
Share on other sites

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!