Search Home Members Contacts
About Us
Products
Downloads
Community
Support
Pages: [1]
  Print  
Author Topic: Development Diary, January 3rd  (Read 3117 times)
SylvainTV
Administrator
Community Member
*****
Posts: 4946


WWW
« on: January 02, 2004, 06:32:58 PM »

Hello and happy new year to everyone ! At last a little development diary for all of us.

A lot has been going on, here's some of the stuff.

First things first, we want you to tell that the whole dev team has upgraded their systems to atleast 2GHZ+ CPU's and 9800XT. This way we can add the new high-end features that only these cards allow. But we don't forget the older systems, TV3D will always be as fexible as its always been.

Arli has been working on a base core for all of the new tools you will be seeing in 6.5, that includes the GUI, base systems for how the Objects will interact with each other and a start on a Plugins system. This will allow us and the community to expand the tools easier, just load in a new plugin and give it a spin.

He started a more in depth coding on a special tool called 'ShaderBoy'. This tool will allow you to rapidly develop Pixel And Vertex shaders, and DX FX Files. It will be very flexible, everything from the UI down to how you modify the HLSL Code.

Here is a early screenshot from the tool.


This mainly shows how the UI will look like, and it is very flexible. You can save your own layout to an XML and reload it easy later. The big Gray area is where the rendering will happend. He started adding some renderstates to the properties grid but its far from done. He's mainly worked on the editor for the HLSL highlighting. All of the tools will be designed in a similiar way, with a very flexible UI and a nice plugin system. As most of you know the tools are developed under .NET using the TV3D 6.5 .NET Assembly DLL. Moreover darqSHADOW has completed some of the classes for the .NET wrapper today, so it's progressing very well.


Here are some things that have been worked on for two months or so on the engine side
 -> Of course some unavoidable 6.1 bugs fixes (q3 map, camera, actor2)
 -> Actor (old TVActor2) : This is the biggest update so far, the internal shaders part has been added. Internal shaders are actually precompiled shaders that are stored in binary in the code. They regroup every combinaison of lights/bones count that is possible. For now there are over 40 vertex shaders and 3 pixel shaders in the internal library.

Why shaders for Actor?
The answer is simple : because they allow a better control of the animation, and allow you to add effects like bumpmapping, which is quite impossible without shaders. As I have already told you several months ago, using shaders is good but requires to rewrite your own light engine in these shaders. That's what we are doing here, the TV3D light engine (for shaders) support right now up to 1 directional light and 4 point lights at the same time, which is actually enough. This is of course linked to the light manager that chooses the nearest lights for you.
Today the automatic bumpmapping for Actor2 has been implemented, it's great to see Tiny with a bumpmap now Wink Only diffuse directional lighting has been done so far but it's trivial to add specular & point lights. You can choose between object-space bumpmapping and tangent-space bumpmapping (which is the most common one).

Here you can see a bumpmapped head. Note that both models are around 500 polys. And you can have realistic details even with this poly count. This is of course the DOT3 bumpmapping that everybody uses. Note that as said before, this bumpmapping works now on Actor too ! (unlike 6.0-6.4)




But this isn't the end for Actor, actually, transitions for animaition have been implemented too. There is a new "BlendTo(time)" that allows to fade into a new animation slowly. The effect is quite amazing and this adds a lot of realism to the animation. Other features planned is of course playing of several animations (animation blending) and facial animation/morphing.


  -> Physics : Some research has been made on Physics/rigid bodies simulation using Impulses for collision response and constraints. The basic algorithms are here and tested. This will be handy for users that just want some physics into their world and that don't want to use other packages as ODE or Tokamak. The current technique works with Boxes, Spheres and custom meshs (a little slower tho). It's using a special algorithm for non-convex mesh, that is an approximation but still work fine. Stability is ok but is to improve. The code has already a "sleeping" code that allows to reduce CPU computations by detecting the non-moving bodies or bodies in equilibrum. No screenshots for that right now but you will see some video one day. Box stacks are quite funny to see Smiley
Speed is quite low at the moment, the collision process is taking some time because it has not been optimized well yet. But on the new CPUs, all is fine.

  -> First exporter for TVM has been completed. This exporter is for GameSpace. the TVA converter/exporter will come soon too.


That's kinda all for the moment. We will keep progressing during this new year Wink
Logged

Regards

Sylvain Dupont
TrueVision3D Developer
sylvain@truevision3d.com

TV3D IRC at http://chat.truevision3d.com or on server irc.truevision3d.com #Truevision3D. Come talk with us !
Pages: [1]
  Print  
 
Jump to:  

Powered by SMF 1.1.3 | SMF © 2006-2007, Simple Machines LLC
Seo4Smf v0.2 © Webmaster's Talks