Archive for September, 2007

Optimizing interactivity

25.09.2007 Anton Volkov

I would like to share our approach to 3D-objects interactivity optimizing. Long time ago in the second version engine we used standard MouseEvents to get mouse events from 3D-objects. However, when we tested with 1-2 thousands polygons where each one is an event listener, we realized that standard mechanism is too slow. Moving mouse above objects slowed FPS from 100 to 50.

That was not good, so we decided to create our own system. The point is that all the polygons are ordinary Shapes (it gives some performance by itself), and the camera has hit-area. When recieving mouse event at this area, we mathematically analize, which polygons are in this sector (see example of “bound map”). Then we find closest polygon and look for intersection between “ray” from “mouse point” to a chosen polygon. Finally we got honest 3D mouse coordinates. And performance stayed at the same FPS.

Dynamic shadows

22.09.2007 Anton Volkov

An automatic UV-mapping made some news again. Now we have shadow texture-objects, which draw some darkness from neighbour objects into texture.

And we also did mipmap-correction - texture quality automatically reduces when camera is moving away. This helps to avoid moire effects and to use memory effectively.

Dynamic shadows

  • Spacebar — start-stop animation
  • Enter — change object
  • Wheel (OR Up-Down arrows for Mac and non-wheeled users) — change scale
  • Ctrl + Wheel (or up-down arrows — tex quality
  • L — static/dynamic lighting
  • Q — tex interpolation on/off

3D objects editor

10.09.2007 Ivan Zykov

There is no need in a complex 3D-editor for modeling simple objects, so we don’t need hundreds of modificators and buttons on screen. Ideally, we can use only 3-4 instruments. Here are some formulated requirements, without texturing issues. If you have seen any useful features in other editors, please give us an advice.

(more…)

Sketches, sketches…

03.09.2007 Ivan Zykov

City demo-scene sketches are in progress. This will help to find out logic and usability issues in territory design.
City demo-scene