I have a major problem; I followed your first tutorial on Material animations to the letter, with the posters going from opaque to clear to opaque again, but whenever I try to preview the animation in the mini-GECK I get the following two warnings:
TEXTURES: (null) :(null) is missing a Diffuse map
Context: DEFAULT "Yes to all" will disable all Warnings for this context.
TEXTURES: (null) :(null) is missing a Normal map
Context: DEFAULT "Yes to all" will disable all Warnings for this context.
I tried opening some of the other nifs you included in the tutorial, but "01DemoAlpha" and "02DemoEmissive" do the same thing, and the rest just don't open up anything at all; I don't even see the GECK logo appear on screen. What the hell?
Yes, is possible to trigger the animation with a projectile attaching a script to the object. The animation should trigger when a projectile hit the object. The script should be like this:
scn "name of your script"
BEGIN OnHit
If IsAnimPlaying == 0 playgroup "name of your controlled sequence" 1 endif
END
The script should be more complicated if you want it only triggesr once or does various animations.
Omny wrote: I have a major problem; I followed your first tutorial on Material animations to the letter, with the posters going from opaque to clear to opaque again, but whenever I try to preview the animation in the mini-GECK I get the following two warnings:
TEXTURES: (null) :(null) is missing a Diffuse map
Context: DEFAULT "Yes to all" will disable all Warnings for this context.
TEXTURES: (null) :(null) is missing a Normal map
Context: DEFAULT "Yes to all" will disable all Warnings for this context.
I tried opening some of the other nifs you included in the tutorial, but "01DemoAlpha" and "02DemoEmissive" do the same thing, and the rest just don't open up anything at all; I don't even see the GECK logo appear on screen. What the hell?
Pixelhate wrote: How did you install the resource?
Omny wrote: Oh, I'm sorry. I didn't read the installation instructions. I didn't think there would be any for something like this. My bad.
On an unrelated note, is it possible to make the texture animations be triggered by something in game like a projectile?
Pixelhate wrote: Script is not my field but I think it should be possible to trigger an animation playgroup when something is hit.
AmaccurzerO wrote: Let me lend a hand, friend.
Yes, is possible to trigger the animation with a projectile attaching a script to the object. The animation should trigger when a projectile hit the object. The script should be like this:
scn "name of your script"
BEGIN OnHit
If IsAnimPlaying == 0 playgroup "name of your controlled sequence" 1 endif
END
The script should be more complicated if you want it only triggesr once or does various animations.
Omny wrote: Ah, thanks! This just might work for an experiment of mine. I'll have to write this down and try it out!
Hmm, I've been trying to apply this to a Super Mutant's mesh, but it doesn't seem to want to cooperate. I try to test it in the Geck and all I get is a big red diamond. Does this just not work when applied to meshes? or is it because I'm using New Vegas models?
EDIT: Nevermind, apparently what I had to do was apply the alpha transition block to every part of the mesh, and it seems to work in the GECK!
I was looking at your advice on animating and from the looks of things, the commands you suggested are related to animation files, like the .kf files? Would I have to save the fading animation as a .kf file to get it to work in this case?
I can offer very limited assist. The guide, made before NifSkope V2, is still mostly correct but many references and definitions have changed. I can help "translating" it in V2 while trying to find the energy to rewrite it. The guide is aimed at Static and movable Static objects, Creatures & weapons can share some similarities with those but are overall more complex.
Static Object can have simple looping animations attached to them or can have their animation triggered (by script, events, etc.). In that case they contain a Controller Manager and Named Controlled Sequences; Open, close, forward, backward, etc. These are the playgroups.
While you can attach a looping texture or material animation into a Creature nif you can't add Controlled sequence directly. You probably have to mess with the .kf animation but that's something above my league.
If you have further questions you can also contact me on Discord, I'm on xNVSE server and my DM are open.
Does anyone reading this know of a similar resource pertaining to Fallout 4? Or could shed some insight on what does and doesn't carry over to working FO4 assets.
Nothing for FO4 to my knowledge. I have no idea how much this tutorial could be useful for FO4 texture animation. You would probably be closer with a Skyrim similar guide but I can't guarantee that either. https://www.nexusmods.com/skyrim/mods/47104
One thing: in the UV-translation animation section, you specify a value of 0 to be used in 'unknown int 2' of the BSShaderNoLightingProperty. As I discovered after a fair bit of messing around, this should really be set to 1, otherwise your object will be invisible in the game.
Thank you, I'm happy it could be useful to you. If you need help with animated textures for a project, don't hesitate to contact me.
You are perfectly right! My knowledge of it has evolved since I wrote this, the "unknown int2 is in fact a shader flag, it needs indeed to be set to 1 (zBuffer_write) to be visible in game. Thank you for the head up!
There is a couple of inacuracy left/missing stuff in the tut, I need to find some courage to go throught it, correct and complete it. You are pushing me in the right direction.
Incredibly nice of you to upload your resources and even provide a tutorial for those eager to learn. Thanks for making modding a lot less frustrating & for such a helpful guide to us noobies!
Thank you, I have just finished to re-mod to re-play Fallout 3 but with this manual I still learning new things, maybe when Fallout 4 came you could adapt it to have a solid tool to start from the begging?
Great job on the tutorial! It's given me a couple ideas already...
I noticed something while reading part 3 that you might be interested in hearing about. In the section on Rotation Texture Animation (Page 10), you state,"The rotation values aren't expressed in angle-degrees, but in number values instead.". Then you gave values for 90/180/270/360 degrees. I recognized those values as I worked with them a few years back when editing vehicle entries of binary .IPL files in GTA-San Andreas.
I'm pretty sure those values are Radians. Radians are often used by math types (scientists, engineers, etc.) when dealing with angles. They're calculated as:
RADIANS = Degrees * PI/180 (PI being the circular constant)
So it would work out to the following when dealing with the common angles:
I did recognise the numbers you mention though, Nifskope furniture markers use a very strange number setting for orienting the seating markers.
Never could understand what they were using & I've always referred the numbers I found on a page about setting up furniture markers where 0 is no rotation, 1570 = 90°, 3141 is 180°, 4712 is 270° & 6282 = 360°.
Those seem to be very close to the Radian figures you give but without the decimal point.
Quite an interesting revelation that it's these Radians, I've even read the Wiki page on them now.
Thank you! Glad to see it's triggering ideas as it is the purpose of this work.
This is a nice share of information, indeed, Kudos to you. I've never given attention to Radians before.
The values I have found are pretty close, but I'll correct them and add the calculation formula in the updated I'll make soon (Noticed a couple of mistakes in a flow chart). You'll be credited, of course.
Thank you for the feedback and for your contribution.
Prensa: It looks like the furniture markers are probably using radians as well, albeit multiplied by 1000 by the look of it. Either way, it should make more precise placement possible in the future.
Pixelhate: Glad to help! Learn something every day huh? Having the numbers close probably wouldn't be noticeable by the average person anyway as the animation's activity would have obscured any inaccuracy. And thanks for the kudos and credits!
Radians are also used for Transform rotations too, though generally in Linear Key animations, not needed really in Quanterion. It is good info. Say you wanted something to spin around very quickly (think fan blade or motorboat propeller) You could use a Time of 0.2667 and Linear key of 6.2832. Any faster/higher would likely not even render in Nifskope, Geck, or in-game. So if you want something to spin fast and nice, use those values.
This tutorial is focused on Material and Texture animations using Nifskope only. It is aiming at Modellers and Modders. Experimentation have been done on simple static objects and so are the examples and informations given. These informations can be used and expanded to weapons, armors, etc.
The first tutorial you linked is dealing with objects animations and the second one is using blender.
While I really appreciate your help on visibility, I don't see them fitting the niche theme I'm developing. Any suggestion is welcome, though.
63 comments
TEXTURES: (null) :(null) is missing a Diffuse map
Context: DEFAULT
"Yes to all" will disable all Warnings for this context.
TEXTURES: (null) :(null) is missing a Normal map
Context: DEFAULT
"Yes to all" will disable all Warnings for this context.
I tried opening some of the other nifs you included in the tutorial, but "01DemoAlpha" and "02DemoEmissive" do the same thing, and the rest just don't open up anything at all; I don't even see the GECK logo appear on screen. What the hell?
On an unrelated note, is it possible to make the texture animations be triggered by something in game like a projectile?
Yes, is possible to trigger the animation with a projectile attaching a script to the object. The animation should trigger when a projectile hit the object. The script should be like this:
scn "name of your script"
BEGIN OnHit
If IsAnimPlaying == 0
playgroup "name of your controlled sequence" 1
endif
END
The script should be more complicated if you want it only triggesr once or does various animations.
Hmm, I've been trying to apply this to a Super Mutant's mesh, but it doesn't seem to want to cooperate. I try to test it in the Geck and all I get is a big red diamond. Does this just not work when applied to meshes? or is it because I'm using New Vegas models?
EDIT: Nevermind, apparently what I had to do was apply the alpha transition block to every part of the mesh, and it seems to work in the GECK!
The guide is aimed at Static and movable Static objects, Creatures & weapons can share some similarities with those but are overall more complex.
Static Object can have simple looping animations attached to them or can have their animation triggered (by script, events, etc.). In that case they contain a Controller Manager and Named Controlled Sequences; Open, close, forward, backward, etc. These are the playgroups.
While you can attach a looping texture or material animation into a Creature nif you can't add Controlled sequence directly.
You probably have to mess with the .kf animation but that's something above my league.
If you have further questions you can also contact me on Discord, I'm on xNVSE server and my DM are open.
You would probably be closer with a Skyrim similar guide but I can't guarantee that either.
https://www.nexusmods.com/skyrim/mods/47104
One thing: in the UV-translation animation section, you specify a value of 0 to be used in 'unknown int 2' of the BSShaderNoLightingProperty. As I discovered after a fair bit of messing around, this should really be set to 1, otherwise your object will be invisible in the game.
You are perfectly right! My knowledge of it has evolved since I wrote this, the "unknown int2 is in fact a shader flag, it needs indeed to be set to 1 (zBuffer_write) to be visible in game.
Thank you for the head up!
There is a couple of inacuracy left/missing stuff in the tut, I need to find some courage to go throught it, correct and complete it.
You are pushing me in the right direction.
Animated texture doesn't work with normal map.
There's not slot for it in the BSShaderNoLighting, which is required for animated texture.
Material animations (Alpha & glow) does though.
Thanks for making modding a lot less frustrating & for such a helpful guide to us noobies!
I noticed something while reading part 3 that you might be interested in hearing about. In the section on Rotation Texture Animation (Page 10), you state,"The rotation values aren't expressed in angle-degrees, but in number values instead.". Then you gave values for 90/180/270/360 degrees. I recognized those values as I worked with them a few years back when editing vehicle entries of binary .IPL files in GTA-San Andreas.
I'm pretty sure those values are Radians. Radians are often used by math types (scientists, engineers, etc.) when dealing with angles. They're calculated as:
RADIANS = Degrees * PI/180 (PI being the circular constant)
So it would work out to the following when dealing with the common angles:
90 Degrees = PI/2 = 1.5708180 Degrees = PI = 3.1416270 Degrees = 3 * PI/2 = 4.7124360 Degrees = 2 * PI = 6.2832
Knowing that it's radians that are being used and how to calculate them, people can then plug in numbers for any angle.
I'd not heard of Radians before.
I did recognise the numbers you mention though, Nifskope furniture markers use a very strange number setting for orienting the seating markers.
Never could understand what they were using & I've always referred the numbers I found on a page about setting up furniture markers where 0 is no rotation, 1570 = 90°, 3141 is 180°, 4712 is 270° & 6282 = 360°.
Those seem to be very close to the Radian figures you give but without the decimal point.
Quite an interesting revelation that it's these Radians, I've even read the Wiki page on them now.
http://en.wikipedia.org/wiki/Radian
Thanks for posting this titbit of information.
Prensa
This is a nice share of information, indeed, Kudos to you. I've never given attention to Radians before.
The values I have found are pretty close, but I'll correct them and add the calculation formula in the updated I'll make soon (Noticed a couple of mistakes in a flow chart).
You'll be credited, of course.
Thank you for the feedback and for your contribution.
Pixelhate: Glad to help! Learn something every day huh? Having the numbers close probably wouldn't be noticeable by the average person anyway as the animation's activity would have obscured any inaccuracy. And thanks for the kudos and credits!
It is good info.
Say you wanted something to spin around very quickly (think fan blade or motorboat propeller) You could use a Time of 0.2667 and Linear key of 6.2832.
Any faster/higher would likely not even render in Nifskope, Geck, or in-game. So if you want something to spin fast and nice, use those values.
Should these tips for using nifskope to make ironsights animations be included?
http://wiki.tesnexus.com/index.php/NifSkope_adjusting_weapons_for_iron_sights
http://wiki.tesnexus.com/index.php/Blender_adjusting_and_exporting_weapon_meshes
This tutorial is focused on Material and Texture animations using Nifskope only. It is aiming at Modellers and Modders.
Experimentation have been done on simple static objects and so are the examples and informations given. These informations can be used and expanded to weapons, armors, etc.
The first tutorial you linked is dealing with objects animations and the second one is using blender.
While I really appreciate your help on visibility, I don't see them fitting the niche theme I'm developing. Any suggestion is welcome, though.
The existing tutorials about this matter are mainly:
Adding material controllers to objects in Nifskope from Ghogiel
Working with the NiControllerManager fromTrickyVein
These where major inspiration, both are referenced in the Credits section.