Posted: Tue Feb 10, 2015 9:48 pm Post subject:
HVA Position is not used
Yes, i tried to create a heli VXL for a test and it was meant to be animated.
I've added 2 new sections to the chassis. Added the rotor blades in VSE. All no big deal.
Opening HVA Builder, the trouble starts.
a) I move the rotor sections in the right place using HVAPosition. No animation yet, just the single frame with the position set up.
In HVA Builder it looks perfectly fine. But ingame the rotors are shown at the center.
HVARotation on the other hand is working correct. I've rotated one rotor 45° and that is also rotated shown ingame.
So question 1: Why is HVA Builder showing me something different? Why do i get ingame a different result?
(If even the simplest things don't work, no one has to wonder why i love SHPs SHP= true WYSIWYG, not this VXL/HVA trouble with completely different results between editors and ingame)
Question 2: Why is HVAPosition not working and HVARotation works?
b) Using Voxel Offset i was able to move the rotors in the right place as well and then they also showed up ingame at that place.
yay would someone think.
But then i tried to animate them and had to notice, that the rotation center is not on center of the moved rotors, but on the center of the entire voxel. Thus any rotation about 45° was moving them to the side.
Since Voxel Offset seems to be a global value (when moved on frame 1 and then on frame 2 to a different place, it also moved on frame 1 to that different place),
how can i rotate a section when using Voxel Offset?
Can anyone with HVA experience explain this strange behaviour?
Attached is my test vxl/hva (the chinook from DTA with the simple rotor sections, so don't wonder if you have palette issues when showing it)
Joined: 10 Dec 2012 Location: I'm too busy conquering the world!
Posted: Tue Feb 10, 2015 10:17 pm Post subject:
You probably need to make a new unit ID. I had this problem with Mammoth Tank and other used units. So you need to use new unit ID. Reusing the same unit ID can be problematic sometime.
Another method of solution is copying and pasting each single layer from old voxel file to new voxel file and redo hva. _________________ Mod Leader and founder of World Domination
i renamed tran.vxl to helitran.vxl for testing and then created the helitran.hva from scratch. No change. _________________ SHP Artist of Twisted Insurrection: Nod buildings
Well, don't know in depth about the issue but what I animated voxels, I found that you need to first center them via voxel offset so in middle of the cross and then animate them so it will properly move it in animating, once all frames finished, move each frame by hva position into the main intended position, DO NOT use voxel offset during this or after to move the animated parts (only hva position move when needed) or you will screw up the animating given voxel offset is global while hva position is for each frame.
As for position problems, I've seen that 2.0+ version is sometimes ingame wrong, try using 1.8 version.
However, I was under impression hva anims did not work for TS aircraft??? QUICK_EDIT
Well, don't know in depth about the issue but what I animated voxels, I found that you need to first center them via voxel offset so in middle of the cross and then animate them so it will properly move it in animating, once all frames finished, move each frame by hva position into the main intended position, DO NOT use voxel offset during this or after to move the animated parts (only hva position move when needed) or you will screw up the animating given voxel offset is global while hva position is for each frame.
As for position problems, I've seen that 2.0+ version is sometimes ingame wrong, try using 1.8 version.
When starting from scratch (no hva), they are all in the center already.
When rotating them first, then moving with Voxel Offset, Voxel Offset moves them along the rotated coordinate system, not along the base coordinate system. (see attached pic)
Since HVAPosition has no effect at all ingame, i see no way to get this working.
Do you have a 1.8 version download link?
ApolloTD wrote:
However, I was under impression hva anims did not work for TS aircraft???
That's correct.
This was/is a test on a VehicleType.
That is horribly outdated. (But thanks anyway for searching one. )
Many of the mentioned buttons and menu don't exist anymore.
e.g.
HVA Animation 101.txt wrote:
Step 2 (setting up the HVA)
Open HVA edit. File->New, now find that multi we made in step 1. And click next. And
then next again. (It will ask you “select what kind of animation you’d like to create.” Don’t
worry about not being able to select anything but black animation that’s fine.) Now it tells
you its ready to import it the editor just click finish.
-There is no File->New in HVA Builder
-There is no "next" and especially no "next again".
-It doesn't ask "what kind of anim"
-there is no import
HVABuilder Offset Rotation issue.png
Description:
Notice how the forward moved Voxel Offset, messes up the HVArotation, since the HVARotation center is still in the center of the entire Voxel
I split the sections into individual voxels. Cleaned up the transformation matrices, which were a bit of a mess. The scales were also different for the body & rotors which can cause problems. The bounds for the body were unsymmetrical too which isn't a big problem but it's better to keep things tidy. Then I put it all back together & made a new HVA from scratch & it works fine.
I did notice that in RA2 the rotors were always displayed on top, but in TS the body overlapped the rotors at some angles. The voxel renderer in RA2 must have been updated to better deal with multi-section voxels.
Quote:
That is horribly outdated.
That guide was made for DMZ's HVA Editor not the HVA Builder
Quote:
HVABuilder Offset Rotation issue
Voxel offset "offsets" the voxel from it's center, it does this by edited the voxels bounds & has nothing to do with the actual HVA. This is mainly used to position sections so the game knows what to render where. For example I offset the rotors along the Y axis so they are above the body the game then knows it should render them on top.
HVA Position repositions the whole voxel including the center & should be used for all animation.
excellent. Thanks a lot Mig Eater. It works fine now ingame.
Mig Eater wrote:
I split the sections into individual voxels. Cleaned up the transformation matrices, which were a bit of a mess. The scales were also different for the body & rotors which can cause problems.
Can you explain why the new matrices have these 0.7 floating values? (see attached image) My old one had these too, but on completely different places in the matrix.
Mig Eater wrote:
The bounds for the body were unsymmetrical too which isn't a big problem but it's better to keep things tidy. Then I put it all back together & made a new HVA from scratch & it works fine.
I wasn't creating the original DTA chinook vxl and only added 2 new sections. Thus i expected VSE to create "normal" new sections without any messed up headers/bounds.
Thanks for fixing the bounds.
Mig Eater wrote:
I did notice that in RA2 the rotors were always displayed on top, but in TS the body overlapped the rotors at some angles. The voxel renderer in RA2 must have been updated to better deal with multi-section voxels.
Yes, i noticed this now too.
Maybe by adjusting the Voxel Offset to an even higher place and then moving the rotor visually down with HVAPosition, this can be fixed?
As far as i understand it, it would then use Voxel Offset to determine which section is rendered in front of the other section. And with a much higher Offset, the game wouldn't render a rotor below the body.
Then use HVAPosition, so the rotors aren't rendered with a gap high above the body.
Mig Eater wrote:
Voxel offset "offsets" the voxel from it's center, it does this by edited the voxels bounds & has nothing to do with the actual HVA. This is mainly used to position sections so the game knows what to render where. For example I offset the rotors along the Y axis so they are above the body the game then knows it should render them on top.
HVA Position repositions the whole voxel including the center & should be used for all animation.
So do i understand correct...
1. you move via "Voxel Offset" the rotors up.
2. using HVAPosition you moved the rotors to front and back along z-axis. Not using "Voxel Offset" here, right
3. Rotation using HVARotation
Is there a way to see in HVABuilder or in VSE or any other tool, where a sections "Voxel Offset" is placed? Where it's HVAPosition is placed and the HVARotation angle?
Something so you see the values in numbers and not only in graphical interface.
Can you explain why the new matrices have these 0.7 floating values? (see attached image) My old one had these too, but on completely different places in the matrix.
The matrix is used along with the HVA to move/rotate the section(s), I've never needed to manually edit the matrix other then resetting it back to default (to fix issues such as yours) so I'm unsure what the differences are. The wiki page about transformation matrices has a formula explaining the matrix but my brain implodes looking at it
Quote:
Yes, i noticed this now too.
Maybe by adjusting the Voxel Offset to an even higher place and then moving the rotor visually down with HVAPosition, this can be fixed?
As far as i understand it, it would then use Voxel Offset to determine which section is rendered in front of the other section. And with a much higher Offset, the game wouldn't render a rotor below the body.
Then use HVAPosition, so the rotors aren't rendered with a gap high above the body.
Looking at the vxl again I noticed that there are two redundant layers on top of the body, the rotors are also 2 layers thick so the two sections are overlapping. Removing the redundant layers or adding extra ones to the rotors should fix the overlapping problems.
Quote:
So do i understand correct...
1. you move via "Voxel Offset" the rotors up.
2. using HVAPosition you moved the rotors to front and back along z-axis. Not using "Voxel Offset" here, right
3. Rotation using HVARotation
Yes I only use the Voxel Offset to move the rotors upwards. If it was a plane with propellers at the front then I'd only move the offset forwards. BTW under Tools > Managers there is a Rotate By tool that lets you specify an amount of degrees you want to rotate the section by. For this voxel I rotated the rotors 22.5o around the Y axis for four frames.
Quote:
Is there a way to see in HVABuilder or in VSE or any other tool, where a sections "Voxel Offset" is placed? Where it's HVAPosition is placed and the HVARotation angle?
Something so you see the values in numbers and not only in graphical interface.
Editing the Voxel Offset changes the voxels bounds which you can find under Tools > Mangers > Voxel Bounds in HVA Builder. Or in VSE under misc in the voxel properties menu.
You already know about the transformation matrix, which controls the HVA Position.
I really should write a full tutorial about HVA editing & bounds XP _________________
ah, Voxel Offset=Bounds. That's a useful info. thx
Yes, i noticed the Rotate by tool and used it on my heli attempt. But the messed up matrix messed up the rotation, so i thought this isn't working correct too.
Mig Eater wrote:
I really should write a full tutorial about HVA editing & bounds XP
That would be excellent.
Especially a tutorial that isn't over 10 years old using outdated tools.
\Edit
is it only me, or does the 4th column of the Body matrix, look like the 1st column of the RotorF matrix?
And 4th column of RotorF=1st column of RotorB
Maybe the matrix box is a bit wrong here.
Normally for 3 axis you have only a 3x3 matrix afaik.
That would at least explain why a 3D matrix now has a 4th column, when hva-builder is showing it wrong and simply use the following sections 1st column for the previous section 4th column.
Normal rotation matrices in Cartesian coordinate system
\Edit
HVA Builder bug confirmed!
I rotated the RotorF and thus changed the Matrix. Now the 1st column of RotorF changed and thus also the 4th column of the Body.
So HVA Builder is showing the matrix wrong. It shows the 3x3 Matrix of the current section + the 1x3 column of the following section Matrix. _________________ SHP Artist of Twisted Insurrection: Nod buildings
i rotated the 2nd section RotorF. But this also changed the matrix of the 1st section Body.
The matrix of one section should be completely separate from another section.
But HVA Builder shows as the 4th column of Section 1, the first column of Section 2.
In VSE the 4th column is showing up correct as the position for the current section, but not in HVA Builder.
Normally for 3 axis you have only a 3x3 matrix afaik.
Usually the fourth column (arbitrarily called "w") allows for more complex transformations. Most 3D games use 3x4 or 4x4 transformation matrices to allow for these. I think that includes 3 dimensional rotations, shearing, scaling, and whatnot. I haven't dealt with quaternions and stuff in a while so I can't totally recall the full extent of their applications. QUICK_EDIT
Ah I see. However I'm not getting the same bug on my computer, the matrix is displayed correctly. What version of HVA builder are you using? _________________
@Orac
with a 3x3 matrix you can
-rotate
-scale
-shear
but not move/translate
with an additional 4th column used as translation vector, you can also move along certain axis.
So a 4x3 matrix is indeed useful for such a game/file format.
But HVA Builder is showing the matrix wrong. It's not showing the translation vector as 4th column, but the 1st column of the followings section 3x3 matrix. _________________ SHP Artist of Twisted Insurrection: Nod buildings
Joined: 22 Nov 2010 Location: Iszkaszentgyorgy, Hungary
Posted: Wed Feb 11, 2015 12:20 pm Post subject:
I guess 2.12... LKO's bug reminds me too much of the fact that my HVA Builder always shown random numbers at the fourth coloumn while VXLSE shown exact numbers. In fact, LKO, good job, you just solved my biggest confusion regarding the HVA Transform matrix haunting me for years. xD _________________ "If you didn't get angry and mad and frustrated, that means you don't care about the end result, and are doing something wrong." - Greg Kroah-Hartman
=======================
Past C&C projects: Attacque Supérior (2010-2019); Valiant Shades (2019-2021)
=======================
WeiDU mods: Random Graion Tweaks | Graion's Soundsets
Maintainance: Extra Expanded Enhanced Encounters! | BGEESpawn
Contributions: EE Fixpack | Enhanced Edition Trilogy | DSotSC (Trilogy) | UB_IWD | SotSC & a lot more... QUICK_EDIT
Joined: 22 Nov 2010 Location: Iszkaszentgyorgy, Hungary
Posted: Wed Feb 11, 2015 12:23 pm Post subject:
Nope, there never was. Hell, congratz. This topic has everything needed for voxelling. No need for a tut anymore. xD _________________ "If you didn't get angry and mad and frustrated, that means you don't care about the end result, and are doing something wrong." - Greg Kroah-Hartman
=======================
Past C&C projects: Attacque Supérior (2010-2019); Valiant Shades (2019-2021)
=======================
WeiDU mods: Random Graion Tweaks | Graion's Soundsets
Maintainance: Extra Expanded Enhanced Encounters! | BGEESpawn
Contributions: EE Fixpack | Enhanced Edition Trilogy | DSotSC (Trilogy) | UB_IWD | SotSC & a lot more... QUICK_EDIT
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum You cannot attach files in this forum You can download files in this forum