Horde3D

Next-Generation Graphics Engine
It is currently 29.04.2024, 00:24

All times are UTC + 1 hour




Post new topic Reply to topic  [ 8 posts ] 
Author Message
PostPosted: 28.01.2007, 21:35 
Offline

Joined: 28.01.2007, 21:33
Posts: 1
I have a terrible frame rate ... I believe it's because of the deferred shading nature of the engine.
is there a version with a non deferred shading path????

or what to do???

thanks


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: 29.01.2007, 14:39 
Offline

Joined: 29.01.2007, 14:11
Posts: 5
I don't think deferred shading will slow it down any, from what I've read its only going to improve the framerate over forward shading when used with multiple light sources .

Might be an issue with older hardware not being able to implement it properly? I don't really know enough about it - but funny you should post about it today .

Our project won't benefit from using deferred shading either (outdoor scene, single light source, large terrain) so I have started looking at how to remove it or turn it off. Should make it easier to integrate the rest of our code then, as well as being more familiar .

This should then allow us to insert native opengl calls in between setting up the viewport and switching buffers to render our terrain and just for testing things that aren't necessarily suited to being in the scene graph, or rather, do not yet have scene graph support for.

If we're successful I'll post instructions on how to modify the source to disable it here. (Unless Nic is able to give some guidance ?)

Cheers,
__________________________
cameron
sandbox software


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: 29.01.2007, 21:02 
Offline
Engine Developer

Joined: 10.09.2006, 15:52
Posts: 1217
Hello,

deferred shading can be slower in some situations. Setting up the G-Buffer every frame has some additional costs but in return the lighting is cheaper. So if you only have one light source you have certainly lower framerates with deferred shading than with forward rendering, although some quick test showed me that it doesn't seem to be so much. But I will have to make some more serious tests to find out how bad the performance drop really is. If you have many light sources you will definately get better framerates with deferred shading. Another thing is that the renderer is completely unoptimized at the moment. I will work on that within the next months when the basics of the engine are done.

@neshume: What graphics card are you using and what are the specs of your scene (number of lights, number of objects)?

There is no forward renderer available at the moment, but it shouldn't be difficult to integrate one. Actually you just have to loop over the light sources and draw the scene geometry. Of course you need a shader now that does the forward rendering and the shader needs the corresponding uniforms (joints, light source parameters). If you have some experience with shaders I don't see any problem.

I'm also thinking of making the rendering pipeline more dynamic so that both techniques will be supported but that will still take some time.

Concerning the terrain: actually it should also be possible to use the terrain as a standard mesh. Horde is/will be optimized for maximum vertex throughput. For example there is an option in the collada converter to optimize geometry for cache coherence.


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: 30.01.2007, 02:47 
Offline

Joined: 29.01.2007, 14:11
Posts: 5
Hi Nicolas-

Thanks for info! I'm glad you are still checking these forums regularly - I'll no doubt have quite a few questions over the next few weeks as our team experiments with Horde. So far its been very positive.

Just on the terrain, we have a significantly large mesh and so require a very optimized ROAM based algorithm for implementing continuous LOD and view frustrum culling. I read a previous post which mentions creating a hook to modify the vertex data in the scene graph, but I'd much rather have our own class which handles setting up a VBO and selecting parts of the mesh to be drawn.

I'll let you know how it all pans out and send back some code if it looks worthy enough to be included with Horde.

Many thanks,
__________________________
cameron
sandbox software


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: 30.01.2007, 23:03 
Offline
Engine Developer

Joined: 10.09.2006, 15:52
Posts: 1217
I hope the integration of your terrain module works well. If there should be conceptual problems I will do my best to help you with some advice. Please note that the scene graph as most other parts of the engine are not yet optimized. But I will soon have time to work on Horde again so I think within the next three months some nice improvements will come out :)


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: 05.02.2007, 22:42 
Offline
Engine Developer

Joined: 10.09.2006, 15:52
Posts: 1217
marciano wrote:
Please note that the scene graph as most other parts of the engine are not yet optimized.


That's no more true for the next release. :)
Scene graph updates are now only done when and where really needed.


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: 06.02.2007, 09:31 
Offline

Joined: 29.01.2007, 14:11
Posts: 5
Do you have an ETA on the next release? and if you do, would it be possible to get a diff from between this release and 0.8 ?

We are using a modified version of Horde (close to having forward shading with our own shadow map algorithm) and it would be nice to know exactly what has changed so we can check if our modifications will have compatibility issues.

Cheers-

_________________
cameron
sandbox software


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: 07.02.2007, 00:56 
Offline
Engine Developer

Joined: 10.09.2006, 15:52
Posts: 1217
I'm planning the next release for the end of this month. But I can't promise that since that depends on how much not engine-related work I need to perform for our CeBit project.

I'm currently doing some internal refactoring for better performance, cleaner code and the improved interface but nothing that would change the current concepts of the engine. So I think it shouldn't be difficult to integrate your modifications. I don't have a complete list of internal changes at the moment since the new release is some time away and we are still working on the new animation system.


Top
 Profile  
Reply with quote  
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 8 posts ] 

All times are UTC + 1 hour


Who is online

Users browsing this forum: Bing [Bot] and 7 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB® Forum Software © phpBB Group