虚幻4学习笔记

关于本文

在学习和使用虚幻4引擎的过程中,不断地遇到了各种问题,也不断地找到了解决办法,为了防止以后遗忘,现将一些经验记录下来,本文将持续更新。

正文

  1. 关于光照UV的问题
    在UE4中,引擎默认将使用模型的第二个UV通道作为光照UV,制作光照UV时,需在3dsMax或者Maya中新建一个通道ID为2的UV,为了使静态光照自然,除了不要让VU重叠以外,还需要尽可能地将相邻面的UV范围移动到一块,尽可能保持相接。

参照:http://www.unrealshapes.org/archives/385
但有时候当模型中缺少第二UV的时候,导入UE4以后,UE4会把材质UV和光照UV都指定为第一UV,这个时候就算你重新导入具有第二UV的模型,UE4也不会吧光照UV指定为第二套UV。这个时候需要手动设置。如图:

  1. Character和Pawn类的主要区别
    他们的区别仅仅是行为表现不同,与是不是敌人友方无关。Character是“行为表现为类人的”(注意是行为表现,不是视觉表现,即是感觉起来而非看起来的意思),支持走、跑、跳(自动落地)、游泳(浮力)等。Pawn不支持走跑跳等,需要自己实现这些行为。但还有个DefaultPawn,表现为可以悬停在空中,可以用来模拟飞行器等。所有的都可以用来创建“敌人”。Character最常见,拿来做海盗、巨人、山贼等等都合适,不适合鲨鱼呀、会飞行虫子啊等等。
  2. UE4中的Shader(着色器)
    UE4中的Material其实就是Shader,只不过采用了图形化编辑的方式,虽然给那些不会用CG/HLSL语言写着色器的同学带来了方便,但有时候图形化编辑Shader没有使用代码灵活,而UE4提供了名叫Custom的节点,允许自己定义节点的功能,使用的是不完整的HLSL语言,他不能在节点内部定义函数,这个节点所包含的代码只能线性地从上执行到下,所以仍然无法完全满足我的需求。换言之,UE4暂时无法完全兼容传统Shader,前段时间我在官方的AnswerHub上提过这个问题,得到的解答跟文档中差不多,UE4还无法用纯代码来做Shader,顶多能让我们用 图形化+代码片段的方式来做材质。

QQ截图20140730165042

标签: none

添加新评论