什么是菲涅尔效应

菲涅尔效应是笔者最喜欢的灯光效果之一.

无论学2D还是3D, 菲涅尔效应都是一个经常遇到的概念. 在3D软件或引擎中, 菲涅尔通常出现在材质的设置选项里 (比如”是否开启菲涅尔”), 在2D绘画中, 有些场景会被要求 “画出菲涅尔效果” . 但即便是老手, 有不少人仍然对 “菲涅尔” 这一术语一知半解, 那么究竟什么是菲涅尔?

一言以蔽之, 菲涅尔效应指的是某种材质在不同距离上呈现出不同的反射效果.

当绘制一个带有反射的表面时,”添加菲涅尔”是一个很好的解决方案,这个微小的调整将带来巨大的影响.

观察下面这张图,注意看到桌子表面的亮度是如何变化的.

继续阅读

VS编程未能找到类型或命名空间名“UnityEngine”的解决

现在Visual Studio Mac版已经出到2022版了.最近需要打开之前的Unity工程做一些小的更新,所以在我2010款的苹果老本子上安装了Unity2021,安装了Visual Studio Mac 2022.
在Unity的Package Manager中确认Visual Studio Editor插件安装并且是最新的版本:

同时在Unity选项中确定External Tools设置中选择的脚本编辑器是对应的VS Mac:

继续阅读

AE中使用toComp()表达式转换坐标系

上一篇 C4D运动追踪导出到AE合成教程 中讲到讲三维空间中的坐标点及对应的运动相机导入到了AE中,要在AE中将粒子或其它特效去完全跟随三维空间的坐标运动是比较容易的,而如果要实现屏幕空间坐标(2D UI)与世界空间坐标(3D坐标)的运动追踪则要使用简单的表达式进行坐标转换处理.

首先准备好要显示的UI层,这里我使用一枚”钻石”做为示例,将该层的锚点修改到钻石底部:

在AE中可以看到”钻石”图层,展开该层找到Position位置参数,如果新建的图层没有,可以按P键添加Position参数,从Position参数处使用橡皮筋连接到要跟随的三维空间点的层,如下图所示:

继续阅读

macOS下的ffmpeg批处理脚本命令

首先夸奖ffmpeg程序是真的棒.通过命令行可以轻松转换音视频格式,对于多个文件批量转换略繁琐,所以写了该批处理脚本命令,并push在github仓库(https://github.com/huaikitty/ffmpegBatchConvert.git).

也可从此下载command文件:

ffmpegBatchConvert 批量转换脚本命令

  • 用于在macOS系统下调用ffmpeg工具批量转换音视频文件.
  • 如批量将某目录下所有avi文件转为mp4格式.
  • 如批量将某目录下所有flac文件转为mp3格式.
继续阅读

UE4人称控制器中相机俯仰角限定方法

在UE编辑器中,要给预设的人称控制器模板(ThirdPersonCharacter或FirstPersonCharacter)加相机俯仰角(Pitch)的限定是比较容易的.模板中使用了AddControllerPitchInput 节点来操纵控制器相机的俯仰角.我们不需要在此做判断限制俯仰角.

我们可以使用SetViewPitchMax和SetViewPitchMin这两个节点来设定相机俯仰角的最大值和最小值,它们归属于PlayerCameraManager,如下图在BeginPlay时设置俯仰角即可实现俯仰角的限定.

默认情况下俯仰角的最大值为89.9度和最小值为-89.9度.

在PlayerCameraManager中还有两个比较省时省力的节点,其中StartCameraFade节点可以用来做画面的淡入淡出效果.StartCameraShake节点可以用来做相机的颤动效果.简单易用.

今天就写到这里,回见!

使用Unity Accelerator加速你的团队

Unity加速器可以通过将项目更新的等待时间减少90%,来帮助你的团队进行更快地迭代。

没有人喜欢等待,无论是你的咖啡机正在酿造美味的咖啡(老实说,要等很久),或者你的本地项目下载了最新的源代码,又或者Unity编辑器第一次加载这些新的更改。虽然我们不能为加速咖啡冲泡做些什么,但Unity Accelerator可以显著地改善你的下载体验和加载源代码更改的时间,毕竟这是每个Unity Developer工作流的核心。

Unity Accelerator是一个本地网络代理和缓存服务,它为两种主要场景(Asset管线导入和通过协作下载源代码)加快了迭代时间。这种改进的工作流将大大减少等待常规阻碍程序的时间,使你和你的团队回去做重要的工作,创作!

继续阅读