• Content count

  • Joined

  • Last visited

Community Reputation

400 Neutral

About jamesw

  • Rank
  1. Just check out the march of the froblins demo paper by AMD, has HLSL for question #4.
  2. >I assume you use this for some sort of AA? It's for a lightmapper, when using low resolution lightmaps I end up with multiple triangles per texel. I want to know how to weight each triangle's attributes toward the final result for that texel. I'm currently doing what you said with sub pixel centers, but even with a large number of samples (16) small texels on UV seams won't get any triangles rasterized to them, so I was looking for an analytical approach. I'll try clipping the triangle. Thanks!
  3. I'm trying to find implementation details on how to calculate pixel coverage (the area of the pixel covered by the triangle) when rasterizing triangles in software. I did some googling but wasn't able to find anything helpful. Does anyone know of any resources on this topic?

    Yeah it's really too bad that the powerpoint + audio format was chosen. Ideally they would convert the powerpoint slides to a PDF which summarizes the information that the talk was about, like Crytek often does. The power point by itself is mostly void of details, and the audio is excruciatingly slow to listen to.
  5. Spore Impressions

    Great read!
  6. DirectX has a generic 'Event' query, which I think is the same as a GPU fence.
  7. Working With Unicode in the Windows API

    I wish I had read this article when I was new to windows programming, it would have saved me a lot of hair pulling. Thanks MJP!
  8. SSAO woes

    Quote:I do not know where the multiplication with (0.75, 1.0) comes from, it does not really make sense to me. I think that is taking the aspect ratio right out of the projection matrix.
  9. Quote:Known Issues ------------ You cannot use the supplied app launcher with a batch file or a launcher application that starts another process (the actual 3D application). release notes
  10. Dynamic loops and ps3.0 (CG)

    There are tex functions where you supply the gradient. In HLSL it would be like this: Quote: float DeltaX = ddx(sampUV).x; float DeltaY = ddy(sampUV).y; for ( int step = 0; step < stepNum; ++step ) { ... tex3Dgrad(noiseTex, sampUV, DeltaX, DeltaY); }
  11. Dynamic loops and ps3.0 (CG)

    Here's two things to try: Put an upper limit on the loop count. As in 'step < stepNum && step < 4'. Use a tex3D function where you supply the gradients (not sure if there is one for Cg) and do the ddx and ddy outside of the loop. Let me know if that works.
  12. Any chance you could post the results too? (now that you've gotten me interested =)
  13. Haha, if you would just scroll down in that thread you would see the HLSL conversion I posted. I have tested the code quite a bit and it is pretty solid. Your mileage may vary, esp if you're just doing a naive copy-paste.
  14. From what I've heard on Geforce 6&7 clip planes are implemented with texkill, so as to not change the results of rasterization due to floating point imprecision. It's much more efficient than doing it yourself though, because triangles completely on one side of the plane are not rasterized at all, and only triangles intersecting the clip plane use texkill. Geforce 8 however actually splits triangles and so you can get some nasty z-fighting with multipass techniques if you enable clip planes in later passes, so you have to use a depth bias. I get the z-fighting from ATI cards too so I can only assume they also do the geometry approach.