Jump to content

  • Log In with Google      Sign In   
  • Create Account


Member Since 09 Jul 2013
Offline Last Active May 04 2016 07:09 PM

Posts I've Made

In Topic: 'External Code' taking up most of my CPU?

14 April 2016 - 12:48 PM

Sorry for the late reply, today has been a busy day at university.

I made the changes you guys recommended, namely, switching out the elementat call for an array access and moving the BoundingBox 'new' call outside of the loop. These two changes have indeed helped increase performance but it still isn't up to the point I was thinking voxel raycasting would be at. I have the following output on the profiler now, the GIWorld.Update call doesn't even show up on the list, I'm looking into how to get the External code portions to show more detail though.



Additionally, it seems there's a bug in the actual raycasting code, as a result of which the results are incorrect. I was hoping to use voxel raycasting on the CPU to do an additional low resolution indirect lighting bounce and then upload that to the GPU for compositing, which is beginning to seem like a not too great idea.

In Topic: 'External Code' taking up most of my CPU?

13 April 2016 - 10:29 PM

Sorry about that, just noticed and fixed the link.
EDIT: Ah, a minute too late.

EDIT: The boundingbox class doesn't actually do any calculations on the data, but I'll give your suggestion a try in the morning.

In Topic: How to deal with perpective projection issue in reflection shader

06 April 2016 - 12:25 PM

I'm sorry, I should have been more clear, I was referring to the circle like area where the reflection is suddenly different around the ship.

The changing filter type idea did give me the idea to see if that was due to missing information by disabling texture wrapping, which did eliminate the issue, sort of, it replaced the circle with stretching, which works better.

In Topic: Vulkan is Next-Gen OpenGL

17 February 2016 - 07:44 PM

Well, since I couldn't wait to play around with Vulkan but the AMD drivers seem to be broken at the moment, I generated some quick C# bindings for it, they're partly unusable because of the way the tool translates types but now it's just a matter of a bunch of cleanup work.




Also, AMD has a new version of their Vulkan drivers, which claim to fix the issues with the latest SDK version.


EDIT: Said drivers still aren't working for me, applications launch but freeze on launch.

In Topic: When you realize how dumb a bug is...

05 January 2016 - 02:09 AM

Not exactly a bug but today I was working on a greedy isosurface extractor and I ended up with this issue with not being able to determine the normals. Spent an entire day trying first taking the cross product of two edges but that didn't give me the final direction properly, then went for weird tricks with the slopes and attempting to detect triangle winding and trying to get the direction from the center of the voxel until I realized just how much I was over thinking it, the one unused axis for each face is the normal direction and all I needed to do was check if adjacentvoxels were empty... As much as I liked having solved the issue, it's sad it took so long to realize something so simple.


Edit: And another bit of stupidity:

for (; (a[d] == Side - 1) ? a[d] >= 0 : a[d] < Side - 1; a[d] += (a[d] == Side - 1) ? -1 : 1)
                            if (VoxelMap[MaterialMap[this[a]]].Visible)
                                done = true;
                            if (done) break;

I wonder why that loop is taking so long....