16
General Discussion / Re: Merry Xiosiamas
« on: December 25, 2008, 06:34:02 am »
can we also celebrate LaanX-mas?
This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.
# Q: My objects are rendered incorrectly. It seems as if parts of it sometimes appear and sometimes disappear.
A: Incorrect rendering of objects can be caused by bugs but there is one common cause of this problem which is Z-buffer related. It is important to realize that Crystal Space does NOT clear the Z-buffer every frame (nor does it clear the screen). By default Crystal Space depends on the geometry itself to clear the Z-buffer. For example, if you have a room with a single object in it then you should use `ZFILL' mode for the room polygons (so that the Z-buffer will be filled but not read) and `ZUSE' for the object (so that the Z-buffer will be both updated and read).
In many cases levels are closed (meaning that there is some exterior object which blocks the view into infinity). If you have such a convex closed object at the boundary of your level you can use `ZFILL' for that. However, there are occasions when this is not possible. Either because there is no exterior object, the exterior object is not closed, or the exterior object is not convex. In that case you better use `ZUSE' for all objects and enable Z-clearing every frame. In world files you can do this by using the `settings' block and enabling the `clearzbuf' option.
Note that you should invoke the method engine->GetBeginDrawFlags() in your call to g3d->BeginDraw() to ensure that this Z-buffer clearing will actually work (in fact you should always use GetBeginDrawFlags()).
Or equally unfortunate, the artist does not agree with our license and so we cannot use their workMake a sticky Thread in the artwork forum that explains the license. if an artist doesn't agree, he shall contribute to another game or (i don't know if that's legally possible) dual-license it under atomic blue and a more free license, so it can be used by ps as well as by other games.