x

Search in
Sort by:

Question Status:

Search help

  • Simple searches use one or more words. Separate the words with spaces (cat dog) to search cat,dog or both. Separate the words with plus signs (cat +dog) to search for items that may contain cat but must contain dog.
  • You can further refine your search on the search results page, where you can search by keywords, author, topic. These can be combined with each other. Examples
    • cat dog --matches anything with cat,dog or both
    • cat +dog --searches for cat +dog where dog is a mandatory term
    • cat -dog -- searches for cat excluding any result containing dog
    • [cats] —will restrict your search to results with topic named "cats"
    • [cats] [dogs] —will restrict your search to results with both topics, "cats", and "dogs"

Vertex Texture Animation Normals

Hey all, Trying to use vertex animation tool for some particle effects I'm working on and wondering if there's any way to use a baked normal map on a mesh using a vertex animation material. linked pic is an example material just wondering where I would plug in a normal map if its even possible.

Thanks, Emilio 'Pariah' Carrillo

alt text

Product Version: UE 4.15
Tags:
qwefwefwefgwe.jpg (74.2 kB)
more ▼

asked Aug 29 '17 at 02:44 PM in Rendering

avatar image

the real pariah
7 2 3 8

avatar image monodrobe Aug 29 '17 at 08:16 PM

I ve thought about this as well, It might be possible but you d have to do a lil expression to convert your tangent space map to a world space mostly adding or something along those lines the vertex normal to your pixel normal. I could be way off though, I ve had a rough time getting results out of this thing from different versions of max

(comments are locked)
10|2000 characters needed characters left
Viewable by all users

1 answer: sort voted first

it depends a bit. You should actually (usually) disable tangent space normals on materials using the vertex animation matfunct.

that is because generally the matfunct. uses world position normals to --per frame-- change the normal map so it still looks fine regardless of the animation/rotation on the mesh caused by the vertex animation. this results in a few oddities though, you cant really properly apply either a world or tangent space normal to the mesh, even when multiplying/adding the additional normal map to the output of the matfunct and normalizing it.

that said, depending on the animation, you can often forfeit the entire normal map input of the matfunct. and just plug in your regular normal map into the "normal" slot. If the mesh is rotating/morphing though this might result in inaccurate normals. but again, depending on the kind of mesh it might not be a problem. you can try to multiply or add the vertex normal texture, or use the "BlendAngleCorrectedNormals" node, but I cant guarantee a proper normal map result.

more ▼

answered Aug 29 '17 at 03:03 PM

avatar image

Luos
9.3k 286 64 330

avatar image the real pariah Aug 29 '17 at 06:25 PM

thanks Luos for confirming what i already thought, nut since you're here any chance you help figure out how to randomize where the meshes start their animations so when you're spawning multiple meshes from a single emitter they're not synchronized, (insert standard fan boy comments here, love your work/tuts/toolkit/etc....)

Thanks, Emilio 'Pariah' Carrillo

avatar image Luos Aug 29 '17 at 06:34 PM

you can use a "dynamic" node in the mat-editor and the "parameter" node in cascade to talk to said dynamic node. with it you can make something spawn with a random value between 0-1. if you use that as a lerp for X amount of frames in the vertex anim matfunct you should be able to do just that.

also, thanks for the kind words :) (and be sure to set my answer as "accepted" :)

(comments are locked)
10|2000 characters needed characters left
Viewable by all users
Your answer
toggle preview:

Up to 5 attachments (including images) can be used with a maximum of 5.2 MB each and 5.2 MB total.

Follow this question

Once you sign in you will be able to subscribe for any updates here

Answers to this question