Jump to content
  • Advertisement


  • Content Count

  • Joined

  • Last visited

Community Reputation

1700 Excellent

About ATEFred

  • Rank

Personal Information

  • Interests
  1. ATEFred

    Deferred texturing

    This will not help with your performance issues. Sub pixel triangles (even sub quad triangles) are going to hurt you, and your pre-pass won't be a fast depth only pass either. What you describe though sounds very close to Oxide's Image Based Lighting. They effectively build up UV unwrapped Gbuffers for their different meshes (offline), then at runtime do the lighting and shading in image space (uv unwrap space), and then the actual scene rasterization happens at the end with in theory the most simple of shaders. It allows decoupling the resolution of rendering (rasterization pass) from the lighting/shading resolution. You could also update the shading at a lower frequency, but you might then get issues with view dependent effects like reflections / specular.
  2. ATEFred

    Deferred Decal Skinned Meshes

    There are many options: you can generate the decal geometry in a GS, or on CPU, or you could render out the decal in texture space for your skinned mesh and apply it straight on the model depending on how your UVs are setup, etc. 
  3. the best technique is highly dependent on your exact requirements. i.e. scene type, scale, amount of dynamic objects, lighting complexity, how many bounces you want, how many months or years you want to spend researching this, what your target HW is, etc. I think it is safe to say no GI technique is trivial to implement in a way that looks good in real life scenarios and runs fast (no light leaking, bugs, etc.) It's an area of active research, so you won't find ready made solutions. Maybe it's best just to start by implementing some of the building blocks techniques, like basic RSM or lightmap baking, and taking it from there. If you want to read up on modern approaches for dynamic GI, Remedy just released a paper going over their approach. Not miles apart is Ubi's solution used on Far Cry 3/4. Another trendy approach I have not seen used in commercial larger games yet is Voxel Cone Tracing. Google will lead you to a bunch of papers for all of these, but realistically this is not the type of thing where you just follow the paper and will get awesome results fast.
  4. I use collada (dae) format models, I then wrote a converter that uses Assimp to read the data in and spit out my own optimized format. Collada is kind of a bloated format but I don't use the daes at runtime so it doesn't matter. Most people I know now use FBX, but I have not tried that so I can't comment on it.
  5. ATEFred

    Terrain tesselation and collision

    In some cases you might not be able to get the same level of detail on your physics terrain and tessellated terrain mesh (for reasons xyz). On one project I worked on some clever guys at NV came up with an approach which would evaluate height of the ground on GPU at the positions of the various character bones, and then offset the bones if needed, to make sure that there was no issues with the characters sinking into the ground. Overall it worked really well. (technically not correct since you would have cases were one leg would be shorter than the other for example, but not very noticeable in game)
  6. ATEFred

    Inner edge detecting

    I heard of it. I will try to get hang of the theory explained in your provided link.   That was just the first link I found on google. It's pretty simple in practice: sample your depth buffer for the point your are shading and the surrounding points, compute how much variance there is over the kernel, and this will tell you if you are on/close to an edge or not. You can then shade the point differently based on that. Kernel size will impact how wide your filter is. (though you can control the thickness in other, more performance friendly ways as well of course)
  7. ATEFred

    Inner edge detecting

    A pretty effective and simple way can be analysing your depth buffer. Using a sobel filter is pretty common for that kind of operation. http://homepages.inf.ed.ac.uk/rbf/HIPR2/sobel.htm
  • Advertisement

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!