登录 用户中心() [退出] 后台管理 注册
   
您的位置: 首页 >> SoftHub关联区 >> 主题: u3d 无法手动修改点光源光晕的方法2     [回主站]     [分站链接]
u3d 无法手动修改点光源光晕的方法2
clq
浏览(577) - 2020-01-28 23:33:27 发表 编辑

关键字: u3d


u3d 无法手动修改点光源光晕的方法2

在前面的方法中要操作 tGO.AddComponent("Halo"); 中的 "Halo" 组件实在是有困难。
一个取巧的方法是使用 prefab,方法是将场景中放一个点光源,然后将它的 halo 打开,然后将其拖动到 resource 目录下形成 prefab ,然后就可以象对付其他 prefab 一样处理了。

使用类似以下的代码取得光源后就可以修改光源的 color 了,这时可以看到光晕的颜色也跟着改过来了。

//取光源物体中的光对象,这样才能设置属性//这个方法同样可以取得 prefab 中的光源对象//如果是取有名称的物体可能要用 Find 函数
public static Light GetLight(GameObject lightObj)
{


Light light = lightObj.GetComponent();

//light = lightObj.light; //这个应该也可以

//light.type = LightType.Point;

//light.cullingMask = //据说这个设置为 Nothing 会让物体产生光晕, 可用来代替 "Halo" 效果//如果GameObject的layerMask与灯光的cullingMask为0,那么这个游戏物体不能被这个光源照亮。参考Layers获取更多信息。
/*
我想代码控制Halo禁用和启用可是使用GetComponent获取不到Halo组件 怎么办啊

回复

Halo组件无法用代码获取到,然而你有几种其他方法可以达到代码更改halo的效果
1:将Halo替换为Light,把DrawHalo勾选,然后把CullingMask选成nothing,这样可以达到与halo相同的效果。
2:给Halo一个动画,通过脚本控制动画。
*/

return light;
}//


总数:0 页次:1/0 首页 尾页  
总数:0 页次:1/0 首页 尾页  


所在合集/目录
u3d光晕 更多



发表评论:
文本/html模式切换 插入图片 文本/html模式切换


附件:



NEWBT官方QQ群1: 276678893
可求档连环画,漫画;询问文本处理大师等软件使用技巧;求档softhub软件下载及使用技巧.
但不可"开车",严禁国家敏感话题,不可求档涉及版权的文档软件.
验证问题说明申请入群原因即可.

Copyright © 2005-2020 clq, All Rights Reserved
版权所有
桂ICP备15002303号-1