如何使用大气着色器为 iOS 制作逼真的 3D 地球
如何从 3D Max/或其他 3D 应用程序真实地球模型移植到 iOS 设备 (Open GL ES) 如何移植大气效果(不是云 - 它是纹理) - 天空的辉光?
How porting from 3D Max / or other 3D application realistic earth model to iOS device ( Open GL ES)
How porting atmosphere effects ( not clouds - it is texture) - the glow of sky?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
如果速度不是重点,您可以使用光线追踪。您可以将地球及其大气层建模为一个不透明的球体,以及一些不透明的大球体作为大气层。它为您提供了一个处理云、阴影、散射、滤光的模型,只需合理的工作量,无需太多调整。对具有相同中心的十几个球体进行光线追踪非常便宜。每个“大气”层都会使光线发生偏离,每层的折射率都会降低,并且它们会吸收一些光,对于较低的层来说会吸收更多的光。花一些时间在纸上,你可以稍微简化数学并变得非常便宜:)
另外,仅对于大气效果,我想以半分辨率进行应该足够了,因为大气效果的频率相当低。
If speed is not the main point, you can use ray-tracing. You can model the earth and it's atmosphere as an opaque sphere, and a few non-opaque large spheres for the atmosphere. It gives you a model that handle clouds, shadows, scattering, light filtering for a reasonable amount of work and not too much tweaks. Ray-tracing a dozen spheres with same center is very cheap. Each 'atmosphere' layer will deviate light rays, with decreasing refraction index for each layer, and they will absorb some light, more for the lower layers. Spending some time on paper, you can simplify the math a bit and make really cheap :)
Also, just for the atmospheric effect, I guess doing it in half-resolution should be enough, as atmospheric effect are rather low-frequency.
我这样做:
第一个渲染通道
第二个渲染通道
[注意]
I do it like this:
first render pass
second render pass
[Notes]