Site:
 News/Home
 CNC Guild Forums
 Submissions
 Contact Staff
 
 Downloads:
 Voxels:
 Aircraft
 Ground
 Naval
 Voxel Comp ´06

 SHPs:
 Infantry
 Buildings
 Animation
 Other

 Icons:
 Packs
 Buildings
 Armored
 Infantry

 Maps:
 RA2 Mp maps
 RA2 Sp maps
 YR Mp maps
 YR Sp maps
 Other

 Other:
 paFileDB
 GFX Packs
 TSGFX Packs
 Tutorials
 Utilities
 Mods
 Sounds
 
 Recommended Downloads:
 Ares
 
RA2 Missions Argentina -English-

Voxel Bounds
Submitted by ArgCmdr


What are bounds?

Bounds are the space in which voxels are represented. They are defined in the header section of each voxel, and are independant of its size (which means you can actually resize voxels through bounds). There are six parameters:
MinX ; bound unit at which the last voxel, from right to left, will be drawn
MinY ; bound unit at which the last voxel, from forward to back, will be drawn
MinZ ; bound unit at which the first voxel, from bottom to top, will be drawn
MaxX ; bound unit at which the first voxel, from right to left, will be drawn
MaxY ; bound unit at which the first voxel, from forward to back, will be drawn
MaxZ ; bound unit at which the last voxel, from bottom to top, will be drawn.

Notice than in VxlSe III, this is inverted. This means all MinY and MaxY are MinZ and MaxZ and viceversa.

What you can do with these beauties? Well basically, you can resize voxels, align them properly without any HVA work, set the correct location for trailer animations and logics, and realise if the voxels will or not overlap themselves.


I. Resizing through bounds

This is quite important, if you, for example, made a voxel out of a 3ds file and then lost the source. Hows this done? Well, basically, you grab the output voxel, and take percentage values of max and min bounds. I must notify, that the process isnt exactly accurate, it seems the constant used to draw the bounds isnt linear, as direct proportion percentages seem to affect more if close to 100% and less if close to 0%. Basically, the biggest you want your voxel to be, being it inferior than 100%, the less proportional itll be to your calculations. At any rate, it should be easy to get it working, but its worth to tell this isnt completely uncovered (i have to calculate how that constant works actually...im quite sure its exponential, but not cuadratic)

Basically: Min Y = -50 Max Y=50, makes the draw area 100 in the Y axis. If you want the draw area to be 20% smaller, then itd be 80. So MinY would be -40 and MaxY would be 40. Same proportion would be applied with the rest of the axis.

This has been tested and verified, however, notice that note about the drawing constant.


II. Aligning

Ive noticed VxlSeIII does a direct -(axissize/2) ; (axissize/2) calculation, and found out how if you export something off 3ds2vxl directly, and apply that calculation with no HVA modifications, youll eventually get the voxel offcentered in the Z axis (Y in VxlSeIII).

I was told by Gilbear that with no HVA editing, voxels looked best centered when MinZ(Y in VxlSeIII) was close to 0. As a result, i always set MinZ=0 , and MaxZ to be the maximum height of the voxel.


III. Trailer fix

I bet at least one of those who will read these have tried to make aircraft with trailers. And failed to do it well, as the ignition of the trailer, was on the voxel. Well, guess what. The trailer lines and trailer animations, by default, start being drawn at bound coords 0,0,0, all you have to do, is:

a) Set MinY (Z in VxlSeIII) as 0, and MaxY (Z in VxlSe III) as the total Y axis length. As a result, the trailer line will be drawn at the end of the voxel, here the afterburner/engine, etc would be. Same would go for the rest of the axis hat may need fixing. Youll notice that this modifications will make the craft misplaced in the selection box. This would be fixed with HVAPosition modifications, used as offsets.

The only drawback possibly in there, is crash animations behaving oddly. This needs a minimal test to be verified.


IV. Overlapping, FLH Determination


According to my calculations, approximately:

1 Cell = 256x256x256 leptons (as cell unit, extras are allowed and considered inbound, yet not normal) [X,Y,Z] 1 Cell = 64 bounds (as far as my eyes can tell, anything above 64 bound units starts overlapping) 1 bound = 4 leptons This would mean that FLHs can easily be determined by just looking at a voxel´s bounds without trying it ingame and do the classic tril and error. Ive been managing this idea for over a year with fairly good results, yet was waiting to find out more about bounds to say anything about it.

> Back to Tutorials

Favourites: 
Ares 
Mental Omega 
raminator CnC 
Sleipnir's Stuff 
Wagnerma.de 
 
Webmaster: 
Nighthawk 
 
Affiliates: 
CNC Guild 
Project Perfect Mod 
CNC Source 
Sudden Strike 
C&C Reloaded 
Revora Frontpage 
Revora Hosting 

This site is best viewed at 1024x786  
Aqua Arg site design created by Mig Eater © 1999-2006 Team Revenge  
Should there be any problems with the site, please contact the current webmaster