Home › Forums › Games202-高质量实时渲染 › 作业3 关于RayMarching加速的minmap实现 This topic has 5 replies, 3 voices, and was last updated 2 years, 4 months ago by qwmnerbvqwmn. Viewing 5 reply threads Author Posts 2022年4月24日 at 上午10:50 #11351 Score: 0 小木子Participant Karma: -1 pt 有没有哪位大佬做了这个作业3的bonus部分,我知道实现原理,但是有点无从下手 2022年4月24日 at 上午10:52 #11352 Score: 0 小木子Participant Karma: -1 pt 还是在gbuffershader里面再加几个fragdata[]吗?查了资料这个fragdata输出是没有办法控制分辨率的 2022年4月24日 at 上午10:59 #11353 Score: 0 小木子Participant Karma: -1 pt 还是说是使用opengl自带的mipmap功能,通过调参来实现这里的minmap,这部分文档我又找不到,看了下《Opengl编程指南》第八版247p+的那些内容, 我也没有搞清楚在这个框架里怎么使用那些api,也没个例子说一下 2022年4月26日 at 上午9:46 #11363 Score: 0 小木子Participant Karma: -1 pt 该作业框架里材质的Texture对象都是使用了opengl内置的mipmap对象,在渲染的时候都是内部自适应的在对应level取值,如果使用内置的mipmap对象来实现minmap该怎么做呢? 2022年5月30日 at 下午6:55 #11638 Score: 0 charvlParticipant Karma: 2 pts 生成 mipmap 的关键操作: – 先为 mipmap 预留足够的内存: glGenerateMipmap(GL_TEXTURE_2D) – 为 framebuffer 绑定不同 level 的 mipmap 作为输出:glFramebufferTexture(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, your_view_depth_tex, mipmap_level) – 在 shader 里面使用 textureLod(your_view_depth_tex, uv, mipmap_level) 来采样某个级别的深度值。 2022年7月9日 at 下午10:02 #11984 Score: 0 qwmnerbvqwmnParticipant 生成mipmap,要把整个代码改成webgl2的,因为webgl1里边gl.framebufferTexture2D,只能设置mip等级为0,设置为非0的数会报mipmapnum错误。 js的代码可以参考这篇opengl实现hierarchy z的文章 Hierarchical-Z map based occlusion culling Author Posts Viewing 5 reply threads You must be logged in to reply to this topic. Log In Username: Password: Keep me signed in Log In