Welcome, Guest. Please login or register. Did you miss your activation email?

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - CypherStone

Pages: [1]
1
Feature requests / Re: Why not set sf::Window style at runtime?
« on: September 04, 2014, 11:10:24 pm »
I'm not sure what the issue with closing the window and re-creating one has with your OpenGL objects as mine stay functional when I change to fullscreen and so on. But I can agree, having a style change function would make the code look considerably nicer our end. Internally it could do all of the destroying and recreation of the window or the Windows and Linux equivalent.

2
SFML projects / Re: d3d (Deferred 3D) - A 3D Engine Using SFML
« on: August 22, 2014, 02:41:54 am »
Amazing work!
Here's hoping my deferred renderer will eventually be this good.

Anyway, I noticed (going through your source code) that your using glBlitFramebuffer for your final output, have you tried rendering out using a simple quad to improve performance. I had a significant gain of FPS by using a fullscreen quad instead. Hope that helps anyway.


3
Feature requests / Re: System specs
« on: August 19, 2014, 11:31:52 pm »
I've developed my own system class too, which allows me to auto configure my 3D rendering project to match the spec (with manual override). It also doesn't allow the program to run if the version of OpenGL is less than what I require.

I have extra features such as CPU usage, memory usage etc. that allow me to track in-game instead of using task manager. However, this would be too specific and don't think it would suit SFML. But something along those lines would be appreciated.

4
Graphics / Re: Deferred Rendering - High FPS Causing Empty Frames
« on: August 19, 2014, 04:44:38 pm »
You should look into sync objects ;). They were made for fine grained control of CPU-GPU synchronization without having to resort to glFinish(), and when the correct strategy is employed, you can probably retain that 4000 FPS without blank screens occuring. This is how I did the measurements that showed me that the GPU always lags behind by 3 frames in the typical case, probably because of triple-buffering ::). glFinish() should never be used anyway, if there are alternatives...

I believe you may have solved my problem! Thank you  ;D!

5
Graphics / Re: Deferred Rendering - High FPS Causing Empty Frames
« on: August 19, 2014, 02:17:28 pm »
Thanks for the reply!

Sorry, was sort of in a rush doing the post and yes, I'm using just pure OpenGL.
I've just literally came to gather that it was a synchronization issue and your advice has helped me realise where it is happening.

Quote
So a call that finishes on the CPU does not mean that its associated command will be finished in nearly the same time on the GPU.

After calling to render each mesh, I've added glFinish() to allow time for synchronization, this has solved the problem of flickering but at the cost of the framerate, which I guess is acceptable due to how fast it is running.

Thank you and thanks for SFML as whole due to how much the framework has helped easing the process of development!  :P

6
Graphics / Deferred Rendering - High FPS Causing Empty Frames
« on: August 19, 2014, 01:43:45 pm »
Hi everyone!

I have come across an issue which I can't seem to fix and need some advice.

The problem is that I am developing my own deferred renderer and I am using SFML as the window framework and I am having rendering issues of anything above 1000fps. I know this is a very high framerate and not realistic at all in anyway but anything above this causes "black frames" or essentially a few empty frames, I have checked everything my side is populated but the only conclusion I can come to is that SFML doesn't wait to swap the buffers(?).

An example setup code I have:

window.clear(sf::Color::Black);

geometryPass();

// Output has been stored to render targets.

lightPass();

// At this point the rendering has been outputted to window buffer, ready to be swapped to the front buffer.

window.display();
 

The reason for the need for high fps is due to my university dissertation on speed and efficiency on a rendering technique but I need to get the deferred rendering implemented beforehand. My PC is currently running the project at just under 4000fps but again, flickering occurs at anything over 1000fps.

Any ideas and advice will be appreciated.

Pages: [1]