Chat in the GameDev. Started by vicviper October 13, AM. And my opinion is that, as technology evolves, there are more and more disadvantages of doing skinning in hardware. The three reasons I found about it are: - latest lighting technology being pushed involves multipass rendering, which is bad for skinning. Cancel Save. The next version of DirectX is likely to provide a more flexible shader system which will let you write to vertex buffers from a shader allowing you to do your skinning once on the GPU to an intermediate buffer and then reuse the skinned geometry over multiple passes.
You can actually already do this using Shader Model 3 on GeForce 6 hardware using the ability of vertex shaders to read from textures but it's not as straightforward or as efficient as it could be. The vertex shader duplication issue is already becoming less of a problem thanks to hlsl, the Effects framework and the static branching offered by newer graphics hardware.
The situation will be further improved when shaders offer more flexibility in their output destination. At some point graphics hardware will be flexible enough to do silhouette extraction - 'geometry shaders' are planned for a future version of DirectX which will allow for silhouette extraction, prgrammable adaptive tesselation and other cool things but that may be a few years away. The issue may become moot though since there seems to be a growing consensus that shadow buffers rather than shadow volumes are the best solution for shadows in the near future.
Carmack said in his QuakeCon keynote that he expects to use shadow buffers in his next engine. There are a few problems with doing skinning on the GPU at the moment but they will all be solved as graphics hardware becomes more flexible.
At the same time the speed of graphics hardware continues to increase at a much greater rate than CPU speed so moving work back onto the CPU is really not the way to go. Game Programming Blog: www. Quote: it is still worth to do vertex skinning in the GPU? EDIT: dammn, cross post :. Ronan In the next version of directX??
Answer View More. Your question has been submitted and is awaiting moderation. It is low-quality It is spam It does not belong here Other enter below. Thank you for reporting this content, moderators have been notified of your submission.
Destination Content Title. Article Type. I am specifically looking for something that shows the workflow of actual development and testing of a skin. I have looked at Google, Amazon, etc. Sign In to Participate Or register to become a member. Related Content Related Content Bootstrap 3.
How to solve: A critical error has occurred. Please check the Event Viewer for further details. DNN Corp. This was because it was GPU bound. So, I reduced the scene to 8 skinned meshes — which would show up optimisation improvements better. I ran the code analyzer tool and found the piece of code that most of the time was code that transforms the vertices with the current matrix of the joint:. There was a function similar to this in the vfpmathlibrary. So I modified it and this is the result:.
It took me quite a while to figure out the assembler, because you need to reference several very technical books to figure it out. So, just let me explain it line by line. On the first line, you have: asm volatile … ;. This instructs gcc that the stuff in the brackets is assembler code. Then you have a number of string s each string is an arm VFP instruction. The idea is that you can do up to 8 similar floating point operations at the same time.
And the rest of the formula is done the same way — three operations all in the one go. That's just to format the assembler code. This loads the 3 vertex co-ords into s0-s2 — i.
0コメント