UE4样条线上生成灯光(根据视角的远近改变灯光参数,类似模型LOD)
起因 :前不久 美术 提出一个需求,需要让 样条线 的上生成 点光源, 然后需要 相机的改变 ,使得样条线上的 灯光参数也改变 ,但有一个 最大距离 的灯光参数,和一个 最小距离 的参数,当小于这个最小距离则按照最小距离的参数设置,大于最大距离按照最大距离参数设置,并且需要在 Editor模式 下也能看见设置效果,要实现在Editor模式下也能看见,则UE4蓝图实现不了,必须使用C++调用UE4的 GEditor 这一个变量,此变量是全局变量,所以不用担心引用问题,部分代码为: 1 FLevelEditorViewportClient* Client = (FLevelEditorViewportClient*)GEditor->GetActiveViewport()->GetClient(); 2 if (Client) 3 { 4 FVector ViewLoction = Client->GetViewLocation(); // 编辑器相机世界位置 5 FVector ActorLoction = GetActorLocation(); // 自身Actor的世界位置 6 float Lenght = (ViewLoction - ActorLoction).Size(); // 该长度则为编辑器模式相机位置与自身Actor位置长度 7 OnEditorViewPos