Parallax-effect and avatar lighting

04.01.2008 Vladimir Babushkin

As an experiment we just tried to visualize an avatar using latest magically developed features (parallax-effect and bump).

Parallax-effect and avatar lighting

Controls:

  • Mouse move — move light source
  • Mouse click — change light color
  • Mouse wheel or +/- — change highlight curve

“Bump” light from spotlight source

30.12.2007 Anton Volkov

Despite all the russian holidays and clear Karpovich’s directive to forget about job and have some rest, I couldn’t let go an idea to make fast “bump light” not only from directional light source, but from spotlight too. This is relatively hard because light goes in all directions, so it seems that you’ll have to count lighting for every pixel… or not? I came up with an idea to modify normals map, to kinda “bulge” it in spotlight coordinates. Main issue is that it is not so hard to count it pixel by pixel, but it is slo-o-ow process. So I was forced to cast a spell find a way to modify normals map using standart Flash filters and blending modes.

We will use that in engine for sure, because our bet is do-it-once counting phases with further maps “baking”. When Hydra will come out with new Flash 10 we’ll just have to pass this routine to shaders.

Рельефное освещение от точечного источника
Size: 1.6Mb

Controls:

  • Mouse move — move light source
  • Mouse click — change light color
  • Mouse wheel or +/- — change material’s highlight curve
  • Ctrl + wheel or +/- — change spotlight size
  • Spacebar — nex tex

I hope now I can finally turn loose now :) Happy New Year and Merry Christmas!

Collecting logs (Step 1 of 9)

27.12.2007 Alexey Kviring

We just finished log collecting and viewing system. Log analizing problem was very actual, because we have not one server servers — game, resource, generator. During test stage we’ll have to handle clients messages too.

Architecture

Logging server is based on OSGI platform. We recieve logs via RMI using JAAS authorization (we had to write an appender for Log4j). Logs are saved with Hibernate into PostgreSQL database. And we wrote some plug-ins for Eclipse for viewing too. Basic features — log filtering with different criterias and filter save function.

Happy Birthday, Anton! Preved!

There are still 8 steps to testing… :-)

Parallax effect

27.12.2007 Anton Volkov

If you also take “heightmap”, you can create so called parallax effect, when texture is changed depending on view angle. We don’t need this for the game engine ’till we’ll got Flash Player 10. It will have an ability to write texture crunching scripts on Adobe’s Hydra language (they say it will use hardware acceleration). So it will be more like pixel shaders then.

Parallax effect
Размер: 1Мб

Controls:

  • Mouse — move
  • Click — change light color
  • Wheel or +/- — change specularity
  • Space — nextex

Using normal maps to lighten sprites

26.12.2007 Vladimir Babushkin

Normal maps can be used to lighten sprites in the game. They have to be rendered or paint, but the effects worth it.

Normal maps to lighten sprites

Controls:

  • Mouse move — move light source
  • Mouse wheel or up/down arrows — change specularity

Bump using normal maps

26.12.2007 Anton Volkov

We also managed to build bump using normal maps. We use prepared image with “relief normals” to pass “surface curvature” info to the engine. Geometry is not changing (we’ll not see this features at the very edges of an object), it works like bumpmap.

This deature is not engine integrated yet (we’re busy with texturing optimization), but you can check quality/speed already.

Normal maps
Size: 1.6Mb

Controls:

  • Move mouse cursor — move light source
  • Mouse click — change light color
  • Mouse wheel — change specularity
  • Space — next texture

Dynamic BSP-tree

20.12.2007 Anton Volkov

Just finished one of the most complicated stage in 5.0 engine development — dynamic BSP-tree rebuilding. Let me remind, that BSP lets us to save and establish all the “who behind who” correspondences between polygons. Thanks to it we now can divide any complex objects and get nice performance in sorting (even during camera or objects moving).

To compare, we took an old 3d-model with house and landscape from 3.0 engine demo.

Dynamic BSP-tree

Controls:

  • Arrows — camera movement
  • Mouse drag — look around
  • Mousewheel or +/- — change FOV
  • Spacebar — animation on/off
  • Enter — change BSP-priority
  • Q — change quality
  • B — show BSP-tree

Integration results

14.12.2007 Alexey Kviring

Most of the integration work is done: there are 3D world editors, users run and chat, world is uploading dynamically, and the object actions system is working good.

Further integration will be done when 3D engine 5.0 will be ready to go.

Full-size screenshots:

Integration results Integration results Integration results

Server-client integration work in progress

06.12.2007 Ivan Zykov

Secret screenshot:

screen_admin.gif

First 3D engine 5.0 results

05.12.2007 Anton Volkov

For those who don’t want to know technical details I should say that everything goes right. We’re going not very fast, because we spent some time re-thinking engine architecture. But now we see some results. Many things have to be finished and optimized, but you can check it out already:

First Alternativa3D 5 demo

Controls:

  • Arrows — camera movement
  • Mouse drag — look around
  • Mouse wheel — change perspective

Right now we have:

  • signals system (there is no CPU load during standstill),
  • perspective correction (including isometry, optimized too),
  • multiply cameras on scene,
  • correct invisible faces cutting,
  • BSP-sorting (any complicated crossing forms now sorting very fast).