Jump to content
  • Advertisement
Sign in to follow this  
sanmk4890

An engine above a game engine

This topic is 1542 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

I want to make a 3d modelling engine for browsers. That is , a set of libraries that other developers can use to make 3d modelling software that run on browsers. This modelling engine will help achieve tasks specific to object modelling and exporting it (in browsers)

 

I thought of using existing 3d game engines to build this modelling engine, because it'd make my task easier. Existing 3d engines already exploit WebGL to the fullest, so if I use them I won't be losing out on any WebGL feature. But the key thing is, it makes development much quicker and easier (rather than working on WebGL directly)

 

So in a layered architecture way of representing: 

(1st) Lowest Layer : Web GL

2nd Level Layer : Existing 3d game engine

3rd Level Layer : My 3d modelling engine

4th Level : Products/Software that use the 3rd layer (the modelling engine)

 

Is that a reasonable/smart decision? Or should I just make my engine work directly above Web GL?

Share this post


Link to post
Share on other sites
Advertisement

In general, when a good, ready-made library exists for a task, it's wise to use it to save time on development, just like you said.

 

However, you must be careful when evaluating the 3D libraries (Three.js probably being the most prominent). Are they actually as feature-rich and mature as they may seem on first glance? In your specific task, do they actually help, or do they rather limit you by forcing their own abstractions onto you, which may be more complex than those defined by WebGL itself? A modelling application is not a typical use case for a (game-like) 3D library, that is usually geared toward displaying pre-existing, mostly static content. That's not a deal-breaker though, as usually 3D libraries also provide some kind of API for arbitrary runtime modification of geometry. Whether they do that particularly smartly or not doesn't matter (performance-wise) before the scenes get complex (thousands of objects, millions of vertices..)

 

Also, when you're talking of a layered approach such that other developers should be using your modelling engine, then you'll have to learn the 3D engine you choose extremely well to inspire confidence in them, and to be able to solve problems that may occur in any of the layers. If you write the WebGL interfacing yourself, you'll (hopefully) become familiar with the potential issues earlier and gain a deeper understanding.

 

Another example: in the open source engine I've started, SDL is used for multiplatform windowing, audio & input. It becomes sort of a "black box" for those tasks, and if there's a complex enough problem on some of the supported platforms, I may not know enough of that platform and SDL internals to successfully solve that problem. Well, that's not such a big deal, as the engine's MIT licensed and the license disclaims all fitness for any purpose, but it'd be different if it was a product with a price tag...

Share this post


Link to post
Share on other sites


Also, when you're talking of a layered approach such that other developers should be using your modelling engine, then you'll have to learn the 3D engine you choose extremely well to inspire confidence in them, and to be able to solve problems that may occur in any of the layers. If you write the WebGL interfacing yourself, you'll (hopefully) become familiar with the potential issues earlier and gain a deeper understanding.

 

Thanks AgentC. This had not crossed my mind!

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • 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!