NPLRuntime icon indicating copy to clipboard operation
NPLRuntime copied to clipboard

支持多种光源模型

Open kevinypcao opened this issue 6 years ago • 11 comments

需要在3d场景中支持如下光源: 1.点光源 2.聚光灯

kevinypcao avatar Jan 14 '19 02:01 kevinypcao

这个之前写过一个开头, 但是没有继续下去。 需要用deferred shading实现 短期内,比较难搞,而且手机上目前还不支持deferred shading, 未来新版本会支持deferred shading。

image

所以这个需求, 可能只能pending, 折中的做法是使用特效,做出一些效果。

LiXizhi avatar Jan 15 '19 03:01 LiXizhi

什么样子的应用场景, 需要多少光源能说下么?

LiXizhi avatar Jan 15 '19 03:01 LiXizhi

应用场景是街边的路灯,光源数量根据路灯数量而定

kevinypcao avatar Jan 15 '19 03:01 kevinypcao

白天还是晚上?

LiXizhi avatar Jan 15 '19 03:01 LiXizhi

只要不是黑夜, 都可以用特效代替

LiXizhi avatar Jan 15 '19 03:01 LiXizhi

白天和晚上都有可能

kevinypcao avatar Jan 15 '19 03:01 kevinypcao

做一个圆锥体的半透明模型,设置为不受光照影响, 基本可以模拟出来,傍晚的效果

LiXizhi avatar Jan 15 '19 04:01 LiXizhi

还有一个方案是:使用Paracraft的自定义方块,创建一个看不见的灯的方块。 但是所有模型是根据1米为单位来计算光照的。被照的模型,比如灯和地面,需要变成比较小的模型的组合,才能模拟出效果。 参考paracraft中的点光源。

LiXizhi avatar Jan 15 '19 04:01 LiXizhi

image

LiXizhi avatar Jan 15 '19 04:01 LiXizhi

OK,那我们试试

kevinypcao avatar Jan 15 '19 04:01 kevinypcao

我们已经在开发基于deferred shading的光源。 请先保证你们可以开启相当于Paracraft中的/shader 2的特效

LiXizhi avatar Jan 17 '19 09:01 LiXizhi