Author
Topic: Post-Processing (Read 822 times)

It's just now that I got a bit of free time. Downloading and merging...

Works nicely, thanks a bunch!

([UPD] I'm currently revising the entire hardware.h; I have two nVidia GPUs working in parallel and I need a mean of two concurrent usages. The new ObjReaderVBO is attached below. Please let me know if its readings for your single nVidia GPU box are still correct.)

Quote

I am working on a stress test model with 17855355 indices...

We are going to have problems with our VRAMs soon.

All the verts and indices, as well as shaders and 8K textures and their mipmaps go there. When there isn't enough VRAM room for everything, the GPU starts to transparently swap parts of it into ordinary RAM. This is bound to seriously affect the frame rate.

GeForce Titans 1050+ are in extreme demand these days. Everybody seems to have gone bitcoin mining, and the prices skyrocketed dramatically.

I have found some C# code that collects GPU load data for ATi videocards. Surprisingly, ATi drivers are open source but there's no clear guide as to how to collect ATi GPU data. nVidia drivers are closed source but everybody seems to know how to squeeze the last bit of fan RPM and GTX GPU temperature data out of them.

Nobody knows what to do with Intel GPUs. They are absolutely opaque black boxes.

Below is a snapshot of ObjReader running on my AMD box with an Athlon 64 X2 dual core CPU and ATi Radeon R7 200 GPU. As you can see, the CPU meter works (high load is due to the AV scanner running concurrently its scheduled task) but the GPU meter is yet dead. Hopefully it goes alive some day too.

I am well aware of it, that was done by design, and this is the exact reason why i am using the word IPS rather than FPS:The historical purpose of it, was to save the CPU. I am doing this also in BassBox, however in BassBox i have the High FPS option (see the attached screen shot, and the High FPS checkbox).

This allow my OpenGL (1.0, 2.0) multimedia applications to be more cooperative with the other running applications.

I had this in mind when i wrote the word new "overclocking" option (when using VBO), in one of my previous post

Seriously, I think we shouldn't fiddle with these tweaks. Using a Windows timer in a serious application is in itself a weird enough thing to do but tweaking that timer is a bit too much. If you want a half speed then VSYNC it traditionally to 30 FPS and be done with it. If you want decent 60 FPS then VSYNC it to 60 or adaptively. If you want full thrust and steaming GPUs then disable VSYNCing altogether and fry your omelette on your box' top cover. But all this fiddling with the timer does no real good and leads only to jerky rotations and stalls.

To cut it short, I fixed the arith in all the three places and renamed nIPS to nFPS, and "IPS", to "FPS". Rotation is smooth, and GPU%, bearable. And FPS and Fraps readings, equal.

I'm hoping to get the Radeon usage code working today. When done, I'll send you the sources and we can release this build as ObjReader v2.5 Stable. We will be keeping it available for users even when working towards ObjReaderFBO w/ post-processing and other capabilities and we will be using it as a reference for our own progress.

When ObjReaderFBO is ready as v3.0, we will still be offering v2.5 for users with simpler hardware and undemanding needs of viewing .OBJ models in a decent viewer. At the same rime, my own goal is to keep on introducing more and more editorial features like lighting, cameras, simple animations, pre-/post-processing effects, etc. Possibly adding an own binary file format to keep these candies in the model file itself as .MAX, .LWS, .C4D files do, and also to make file sizes significantly smaller and faster to load etc. etc. etc........

I will also send you my Fraps installer. It's free to use and it works in 64 bits like a charm. It's still a 32-bit binary itself but it installs a 64-bit detour on the 64-bit OpenGL and/or DirectX drivers to be able to work with both bitnesses simultaneously.

Are you aware that you can adjust the speed with the "+" or "-" keythe FPS being twice the IPS, gP.rGiroStep must be half its previous value, to keep the smooth small step i have used by design.If you find it too slow just, press the "+" key.We could also add of a new preference setting to save the user choice