Thorris

Members
  • Content count

    34
  • Joined

  • Last visited

Community Reputation

122 Neutral

About Thorris

  • Rank
    Member
  1. Hello, I know of quite a lot resources on state sorting in the renderer, but I need to optimize state changes directly in the scene graph, so not at rendering time. I thought of collecting the material, textures, etc. for each renderable entity and rebuilding the scene graph with that information. I don't know if that is possible, since especially transformations included in the scene graph would be hard to handle. I would appreciate any resources, ideas, hints, fallbacks on that topic. Thanks. Ciao, Thorris.
  2. Hello, I'm currently looking into text rendering, as well. I would like to ask, how you actually render a piece of text. Do you use a dynamic vertex buffer and add a quad for each character in a string? I recently found out about Pango, a text layout library. I can be used to layout a whole text with different attributes like font weight, etc. I'm going to give it a try. Ciao, Thorris.
  3. smart pointer with d3d COM

    Hello, thanks a lot for your detailed answers. As JohnBolton mentioned the order of releasing doesn't matter. In fact the problem came from a totally different mistake I made. Nevertheless the hint to use the COM reference counting methods is a good idea and I will give it a try. Ciao, Thorris.
  4. Hello, I'm currently struggling with a problem when using smart pointers with Direct3D COM objects. The smart pointer releases the COM resource when the reference count reaches 0. The problem is the order of releasing. The Direct3D device is sometimes destroyed earlier than other resources (e.g.: a surface). Now I need to find a way to ensure that the device is destroyed at last. Could anyone imagine a good solution to this problem?
  5. SceneGraph & Composite pattern?

    Hello, you should take a look at the Visitor pattern. It is often used together with Composite. The overall idea is that you traverse the scene graph with the visitor object and each node calls a member function of the visitor, which implements the operation to be performed. Every node derived from the base class must override the traverse function and must call the visitor method for its particular type. This prevents the use of dynamic_cast or RTTI. Ciao, Thorris.
  6. C++ unit tests

    Hello, I also found out about TUT. I will take a look at both. Thanks. Ciao, Thorris.
  7. Hello, does anyone know a good framework for unit tests in C++. I know NUnit, but I think it is only for managed languages in .NET. Ciao, Thorris.
  8. Hello, I know this way, but it works only if there is no access to the underlying pointer. So you could not use typecast operators, but maybe I don't need them. Ciao, Thorris.
  9. Hello, I finally found out why this problem occurs. When declaring the class as const the object itself is really const, but not the pointer on to that object encapsulated in the smart pointer. But the overall problem remains. Ciao, Thorris.
  10. Hello, I'm currently writing a smart pointer to use in our project. There is something that is confusing to me. I create a smart pointer as follows: SmartPtr<const Classname> name; The problem is that it is still possible to change the underlying pointer without any complaints by the compiler. Does anybody know a way to overcome that. I read that type traits could do that, but I don't know how and I cannot imagine that I would get the information at compile time. Thanks, Thorris.
  11. Hello, has anybody ever finished a working shader plugin (not vertex/pixel shader)? We want to use 3dsmax as level editor and need the shader for our materials/texture requirement. We have lots of problems and any help/source would be appreciated. Thanks in advance, Thorris.
  12. Hello, for our current project we create an export plugin for 3dsmax. In the plugin we want to use the Xerces XML Parser to load some information from file, but when using anything of Xerces 3dsmax is not able to load the plugin. error message: DLL <path to plugin> failed to initialize Has anyone else had this kind of problem and maybe found a solution? Ciao, Thorris.
  13. Hello, Quote:Also, aggressive occlusion culling can help a lot. Do you use occlusion culling for all shadow maps, or maybe just for the sun shadow map? I know you use a software rasterizer to create the occlusion maps, but even if you take advantage of CPU/GPU concurrency, this seems to be a big overhead. Maybe when traversing the tree you cull against the bounding volume of the light. This could save a bit of work. Ciao, Thorris.
  14. NVidia style shadow mapping

    Hello, the steps you do seem correct to me. I do it the same way. You should maybe increase the depth bias to avoid z fighting in the shadow map. You should also take a look into second-depth shadow mapping. Ciao, Thorris.