3D engine selection

I want to start this as a hobby in developing a board game. I found several engines, but I'm not sure if it does the initial work that I am looking at.

First I want to do the following:

  • Create a figure (avatar) and let the user put on an avatar
  • Upload an avatar to the game

In the later stages, I want to develop this as a multiplayer game.

What should I do?

+6
c ++
source share
11 answers

I also recommend Ogre. Ogre can do this, it provides everything you need with regard to grid support and animation, but not as an insert solution. You have to write a lot of code for this.

In our project, we implemented something like you. The main character and any other character can be dressed with various weapons and armor and visual changes to the character's avatar, respectively.

As a hint on how to do this: in your modeling tool (Blender, Maya, 3ds max, etc.) you model your avatar and all your clothes that you need and set them on the same skeleton . Then export everything individually to the Ogre grid format.

At run time, you can attach the clothes nets that the user selects to the skeleton instance so that they together form an avatar. This is not easy to do with the Ogre-API, but for even easier access to this, you can use the MeshMagick Ogre extension meshmerge tool. It was designed specifically for this purpose.

If you want to change other characteristics, such as facial features, this is also possible, since Ogre supports animation of representations in the form of vertices from the box, so you can prepare patches for certain facial characteristics and allow the user to change the face with sliders or something like that. (e.g. in Oblivion)

One thing you need to know about Ogre: This is a 3D graphics engine, not a game engine. Thus, you can draw material on the screen with it, animate and illuminate and somehow change the visual effects, but this does not make an input signal, physics or sound. To do this, you need to use other libraries and integrate them. However, several pre-installed game engines based on Ogre are available.

+15
source share

If you are good in C ++, you should use Ogre, it is the best open source engine, constantly updated by its creators, with a lot of tutorials and a very useful community.

http://www.ogre3d.org/

This is more of a GFX engine, but it has all the necessary prerequisites.

Good luck

+6
source share

No engine is likely to do this for you. Usually they allow you to load and display 3D models. But combining them, the way you will need to โ€œdress themโ€ is up to you. And creating them, or letting the user do it, is ultimately up to you. The mechanism may offer a number of tools to facilitate the task (for example, rendering the model during user development), but the game engine is not a โ€œmake a gameโ€ magic field, where you just need to click a button and your custom game comes out.

+2
source share

Several people said Ogre3D , I suggest Irrlicht as an alternative.

+2
source share

You might want to take a look at http://www.crystalspace3d.org/ - I have to admit that for me it was more of a research question, but it looked like a pretty good engine - including physics and scripts. They have a project that shows an avatar walking in a building resembling space, with very smooth camera effects.

OTOH: depending on how far you want to do this, you may find a recreation of an environment similar to SecondLife (tm). If this is a fair assumption, then you can take a look at OpenSimulator and related open source projects and see if it might interest you, and work there with the existing team to develop the code further, rather than working independently.

+1
source share

If you use C ++, I suggest the C4 Engine . From my experience, existing game engines are either too hard, or simply nothing more than a collection of libraries.

+1
source share

Ogre is a good way to go if you are simply interested in showing something. As already noted, Ogre is a rendering engine. There are many add-ons and features for performing common tasks such as audio, input, and more. This is great if you are just trying to play or create a prototype.

If you want to start a long-term project that will be developed over a longer period of time (which is likely, given that you are probably the only developer and games that are complex applications), you should really start to think that this is , What do you want to do. Then, based on your goals, find a few engines that can solve your needs (there is always an API to run XYZ). Then itโ€™s up to you how you manage your game and where you use the existing libraries - basically you are tying your own engine to suit your needs.

It gets a little trickier if you start looking for a real game engine in terms of an "engine for all my game needs." Check out the good list of 3D game engines on devmasters ( http://www.devmaster.net/engines/ ), you will find many game engines with alpha status trying to accomplish this, although you should keep in mind that support and documentation are usually are not second to none in these cases.

I have never personally used it, but I appreciated the open source Delta3D engine (delta3d.org) for my project and was impressed with its cool architecture. It encapsulates a whole bunch of other quality open source frameworks for things like graphics (OpenSceneGraph: openscenegraph.org) or physics (ODE: ode.org). As far as I know, this is possible as close as you get to the free and flexible game engine. It was developed at the University of the Air Force, and thanks to this, there are a lot of detailed documentation in the academic plan.

+1
source share

If you are well versed in C ++, you can write your own engine: P

Ogre is the best of Irrlicht and Crystalspace, and the argument is simple - Ogre was actually used in the production pipeline of the gaming industry. It actually has a lot of weight, while Irrlicht and Crystalspace are more or less applications that don't do much out of the box. However, Crystalspace has a branch project that implements the game engine directly in Blender 3d , allowing the artist to play the role of a programmer without leaving real software.

I'm not very big on Irrlicht - there are a lot of secrecy behind his motives. For an open source project, it branches out into many different derivatives, which are either full-fledged game engines or WYSWYG editors, and they find ways to block you in payment somehow.

Ogre is different in that it is a graphics engine, not a library, and must be compiled according to individual needs. The trade-off is that you can implement Ogre in any design stream or even create a new one. Where loading from your shoulders is required, you have to write graphic code of any type, which makes it a very smooth fast prototype in a basic form.

+1
source share

One engine you could try is the Torque 3D www.garagegames.com game engine, which, although not free, lets you get out of the way. Although the functionality that you are looking for in terms of the ability to fully customize the character is not instantly available in the engine, if you want to create models yourself, it should not be too difficult to add them to the game and use the game engine to change the "skins" of the avatar. One thing that I think will be different from other engines is that it comes with pre-installed network functions (from what you described in your question, I assume that you are trying to either do RTS or MMO, and if so, I wish you good luck).

Although it may seem strange that the engine is based on shooting, there are Torque forum guides that allow you to add sword-based combat encoding and other things related to the fantasy game (if that's what you plan to do).

But anyway ... good luck with your project. If you are trying to understand what I'm trying to do, this is no easy feat. But I'm sure you know what you are doing =)

Hope this helps

0
source share

If you are interested in using the Irrlicht 3D engine, you can find a series of tutorials to help you create simple 3D applications here .

0
source share

I also suggest Irrlicht . It's easier to get started with, but it doesn't have half the support for Ogre3D.

0
source share

All Articles