OsirisEngine planned features

Share with us how are you using the powerrrr of the force

Moderator: Alain

OsirisEngine planned features

Postby aqnuep » Mon Dec 07, 2009 6:22 pm

Hi,

I know that I should post here when I have something fully working, however, I'm interested about your opinion what more should be included in the game engine of your dreams.

My planned feature list is the following:

General
• Cross-platform with offical support for Windows, Linux, FreeBSD and MacOSX
• Language independent interface with official support for C, C++, Delphi and FreePascal
• Clear design and high efficiency provided by underlying C++ implementation
• Model-View-Controller pattern based entity management
• Fully event based entity management for increased performance and better usability
• Triggers and other game logic helpers to streamline game logic creation
• High level of abstraction to provide an easy to use programming interface
• Scales well to multiple CPU cores by using a highly parallelized workflow
• Scales on NVIDIA SLI or AMD CrossFire configurations by dividing rendering tasks between GPUs
• Works efficiently for various game genres ranging from first person shooters and racing games to complex real-time strategy games
Graphics
• State of the art graphics quality using Shader Model 4.0
• Clear rendering engine design fully based on OpenGL 3 standard
• Outstanding performance even when rendering very complex scenes
• On-the-fly rendering optimization for any graphics driver based on statistics
• Deferred shading able to handle large number of dynamic light sources
• Instancing for extremely high geometry throughput
• Skeletal animation with support for skinned instancing
• Inverse kinematics for animated characters even with instancing support
• High quality dynamic soft shadows with support for translucent shadows
• Efficient particle system able to handle millions of particles
• Automatic instance cloud reduction and occlusion culling for reducing graphics workload
• Realistic high performance reflection and refraction using advanced SM 4.0 technologies
• Extremely realistim simulation of atmospheric effects including but not limited to volumetric fog and light scattering
• HDR rendering with integrated support for tone mapping and bloom effect
• Global illumination approximation using screen-space ambient occlusion and low-frequency directional occlusion
• Large amount of customizable post-processing effects including motion blur, gaussian blur, depth-of-field and more
• All the mentioned features are executed 100% on the GPU for premium performance
• Built-in support for various image and model formats
Physics
• Fully physics-driven design using Newton Game Dynamics
• Multi-threaded solver model scaling up to a theoretically unlimited number of CPU cores
• Realistic rigid body dynamics able to handle huge number of dynamically simulated objects
• Fully customizable event handling for various physics object interactions
• Highly customizable material and friction model
• Continuous collision detection support for fast moving objects
• Stable and easy to use kinematic character controller
• Complex body interactions by providing large variety of rigid body constraints
• Physics driven inverse kinematics and ragdolls
• Archimedean buoyancy for simulating water and other liquids
• Real-time air drag force calculation based on object shape
• Realistic and fast vehicle simulation
• Volumetric force field simulation
• Support for physics integration over network
Audio
• High quality 3D sound spacialization using OpenAL
• Simulate acustic environments using hardware EAX effects
• Streaming support for both offline and online audio stream sources
• Support for lightweight audio capture functionality
• Built-in support for dozens of sound file formats
Network
• Support for both TCP/IP and UDP/IP based network solutions
• Build-in support for client-server and P2P network architectures
• Easy to use VoIP and team-speak support
• Integrated HTTP and FTP support for implementing dynamic update systems
Scripting
• Powerful and ultra fast scripting with Lua
• Full control over entity management from within scripts
• Support for script based event handling

Unfortunately most of these is only in design and specification phase but not implemented yet. I plan to have the first release of OsirisEngine in about a year with the important features implemented.
I'm just interested in whether any of you have anything to add to this wish list that you would find useful if you would use the game engine.
I need this input to be able to keep in mind the wish list when designing the class hierarchies and interactions in order to easily integrate them in the future.

I know this sounds a bit stupid, but any feedback would be useful for me. Now I'm highly focusing on clear design and I want to collect as much requirements as possible.

Thanks in advance and sorry for the large post!
aqnuep
 
Posts: 97
Joined: Sat Dec 22, 2007 4:14 pm

Re: OsirisEngine planned features

Postby Carli » Tue Dec 08, 2009 4:12 am

* OpenSource
- for a faster developement and decentral debugging
Carli
 
Posts: 245
Joined: Fri Oct 02, 2009 5:28 am

Re: OsirisEngine planned features

Postby Stucuk » Tue Dec 08, 2009 7:10 am

You mean Open Source for a more bloated engine that runs slower.
User avatar
Stucuk
 
Posts: 801
Joined: Sat Mar 12, 2005 3:54 pm
Location: Scotland

Re: OsirisEngine planned features

Postby Carli » Tue Dec 08, 2009 10:28 am

Stucuk wrote:You mean Open Source for a more bloated engine that runs slower.

I'm not talking about write access!
i'm talking about an open source (a source that lays open to read what's in)
Carli
 
Posts: 245
Joined: Fri Oct 02, 2009 5:28 am

Re: OsirisEngine planned features

Postby aqnuep » Tue Dec 08, 2009 12:52 pm

Hi,

Open source development does not mean necessarily faster development, especially if only you have commit rights.
For decentralized debugging purposes I'll use open beta testing. That'll do the job I think.

OsirisEngine will btw closed source project for the following reasons:
- keep engine design clear and in own hand
- keeps my secret of how things are done inside as it already contains such revolutionary optimizations and algorithms that are my intellectual property and haven't been used earlier in any other projects (at least as far as I know), btw these things will make the game engine actually that efficient and able to handle virtually all types of game genres
- makes it a possibly shippable product

As I mentioned the last bullet point, I have to talk about the future licensing of the engine:

It won't be free. However, it will have a very very small price for independent game developers and small companies as it's primarily intended for them. Why? Because I would like to support such companies and individuals with professional tools, not like the usual open source game engines (I don't want to blame anyone who is involved in such a project, however, I think it's clear that current open source game engines does far not provide such new technologies what my engine will provide, or at least, they weren't designed for such things and as a result, they handle these very inefficiently).

One may ask why not free if it will be anyway very cheap. That money wouldn't be enough to fund the project on it's own, I get more money by working for my company as an employee. The purpose of this kind of licensing to have the followings:
- keep everything in my hand, so I won't face having different modded versions of the engine all over around
- have the opportunity to be able to sell it to larger companies later if the engine will succeed in order to fund further development
- the money paid for it would serve as a donation to appreciate the support that my customers will get with the product

I hope you all understand the motivation behind all these.
Thanks for your interest and still curious about what else would you like to see in my game engine!
aqnuep
 
Posts: 97
Joined: Sat Dec 22, 2007 4:14 pm

Re: OsirisEngine planned features

Postby Carli » Wed Dec 09, 2009 6:55 am

ok, i accept your choice.

but keep in mind that opensource means portability for every platform: every OS and every CPU architecture. (you don't port but if someone wants a port he can create on his own.)
Carli
 
Posts: 245
Joined: Fri Oct 02, 2009 5:28 am

Re: OsirisEngine planned features

Postby aqnuep » Wed Dec 09, 2009 7:44 am

Carli wrote:ok, i accept your choice.

but keep in mind that opensource means portability for every platform: every OS and every CPU architecture. (you don't port but if someone wants a port he can create on his own.)


If you use cross-platform libraries, then porting shouldn't be a problem. I use libraries that abstract all stuff which is Windows, Linux, FreeBSD or MacOSX specific. I just have to compile a new image to those platforms.
aqnuep
 
Posts: 97
Joined: Sat Dec 22, 2007 4:14 pm

Re: OsirisEngine planned features

Postby Stucuk » Wed Dec 09, 2009 8:05 am

Carli wrote:but keep in mind that opensource means portability for every platform: every OS and every CPU architecture. (you don't port but if someone wants a port he can create on his own.)


No, what that means is you end up with lots of different offshoot versions specific to one OS. Doing it the way aqnuep's planned will mean that his engine's features on one OS will be exactly the same as on another OS. With open source you would proberly end up with different bugs and different features on each OS since they would be maintained by different people.
User avatar
Stucuk
 
Posts: 801
Joined: Sat Mar 12, 2005 3:54 pm
Location: Scotland

Re: OsirisEngine planned features

Postby Carli » Wed Dec 09, 2009 11:49 am

I'm not talking about OS, i'm talking about CPU architectures. The most computers arent x86 - they are ARM. For example in Germany, there are more Mobile Phones than people and you also have a navigator, a pocket PC ......, all these are no x86;

I myself don't want to work with more than 1 or 2 architectures, but when someone wants a port to this platform, i will give him the code to compile - the easiest way ;)

opensource does not mean uncommercially! you can give the source to one of your clients as a service. The license has not to be ISC or GPL, you can have your own license that forbids to compile the code when you did not pay - and you can sue it.
Carli
 
Posts: 245
Joined: Fri Oct 02, 2009 5:28 am

Re: OsirisEngine planned features

Postby aqnuep » Wed Dec 09, 2009 12:08 pm

Carli wrote:I'm not talking about OS, i'm talking about CPU architectures. The most computers arent x86 - they are ARM. For example in Germany, there are more Mobile Phones than people and you also have a navigator, a pocket PC ......, all these are no x86;


I do not plan to support other architectures currently because of the following reasons:
- I don't know any other platforms that support Shader Model 4.0 and are widely used (btw MacOSX does not support OpenGL 3 yet as well, at least as far as I know, so for that platform the testing will be even delayed a bit)
- For sure no plan for support on mobile devices as they don't have the horsepower
- These cross-platform libraries that I use support much more platforms that I've chosen to use, not just x86 architectures, so I can add those later if really needed

If I'll have success, probably I'll port the engine to Play Station and maybe other console, but I don't see too much sense in supporting very exotic platforms.
aqnuep
 
Posts: 97
Joined: Sat Dec 22, 2007 4:14 pm

Re: OsirisEngine planned features

Postby Stucuk » Wed Dec 09, 2009 3:09 pm

Carli wrote:I'm not talking about OS, i'm talking about CPU architectures.


Same difference.

Carli wrote:opensource does not mean uncommercially! you can give the source to one of your clients as a service. The license has not to be ISC or GPL, you can have your own license that forbids to compile the code when you did not pay - and you can sue it.


For a large company suing everyone who abuses a licence is simple as they have more lawyers than sense. But for a normal person you can't sue everyone because it would cost too much time and money. Bottom line is that if you make something Open Source then you will make less money from it.
User avatar
Stucuk
 
Posts: 801
Joined: Sat Mar 12, 2005 3:54 pm
Location: Scotland

Re: OsirisEngine planned features

Postby aqnuep » Wed Dec 09, 2009 3:16 pm

I agree with Stucuk, you cannot expect that your license will protect your intellectual property.

Btw so far the discussion was all about licensing and platform independence. I don't say it's not interesting to see people's opinion about this, because it's good to know that. However, don't you have any new ideas related to the functionality of the upcoming engine?
aqnuep
 
Posts: 97
Joined: Sat Dec 22, 2007 4:14 pm

Re: OsirisEngine planned features

Postby Stucuk » Wed Dec 09, 2009 7:18 pm

aqnuep wrote:I don't say it's not interesting to see people's opinion about this, because it's good to know that. However, don't you have any new ideas related to the functionality of the upcoming engine?


My only suggestion would be to build in the ability to scale. But i doubt you would do it. Scalable engines mean a wider audience. But since you are going to make it using OpenGL3 then its not likley to be able to be scalable.
User avatar
Stucuk
 
Posts: 801
Joined: Sat Mar 12, 2005 3:54 pm
Location: Scotland

Re: OsirisEngine planned features

Postby Carli » Wed Dec 09, 2009 8:14 pm

When you separate the logic and the graphics well, it should be no problem to make a compatibility mode where you can play the game content without having full graphic power.
Carli
 
Posts: 245
Joined: Fri Oct 02, 2009 5:28 am

Re: OsirisEngine planned features

Postby Stucuk » Thu Dec 10, 2009 6:27 am

Carli wrote:When you separate the logic and the graphics well, it should be no problem to make a compatibility mode where you can play the game content without having full graphic power.


For true scalability an engine needs to have a shader system designed so that it's shaders can have definable areas which are removed/added to the shader thats passed to OpenGL, the definable areas would mainly be like {ifdef Shader4} bla {endif}. That then allows the engine to handle any Shader version. Which also makes it better when new shader versions come out as they can be supported without raising the minimum Shader version requirement. The ability to use either OpenGL2 on pc's that don't support OpenGL3 would also be needed. Based on Stu's 5 year rule Geforce 7's should still be around in 2012, while a definate minority by then it would still be alot of people. But it ultimately depends on when the engine is finished by.

Note: Logic and Graphics are separate things.
User avatar
Stucuk
 
Posts: 801
Joined: Sat Mar 12, 2005 3:54 pm
Location: Scotland

Next

Return to User Gallery

Who is online

Users browsing this forum: No registered users and 3 guests

cron