转载请注明出处为KlayGE游戏引擎,本文的永久链接为http://www.klayge.org/?p=2736 KlayGE从4.0开始引入deferred rendering层(DR),并且这几个版本都在持续地改进,以提高性能和降低使用难度.在即将发布的4.4里,deferred rendering更是往前跨了一大步,实现了一个初步的Tile-based Deferred Rendering(TBDR).和常见的TBDR不同之处在于,这里的方法只需要SM3.(其实SM2也没问题,只是如果光源…
转载请注明出处为KlayGE游戏引擎,本文的永久链接为http://www.klayge.org/?p=2761   本系列的上一篇讲了DR中的一些改进.本篇开始将描述这个版本加入的新功能,高质量地形. 原有的地形 以前的地形实现和水面的方法一样,都是从Crytek在2008年的老方法改进而来.虽然比projected grid的好得多,并且速度很快,但有一些很明显的缺点: 视点移动的时候会抖动.水面比较平,而且有波浪看不出抖动.如果用来做静态地形抖动就会非常明显.尤其是far plane变大之…
转载请注明出处为KlayGE游戏引擎,本文的永久链接为http://www.klayge.org/?p=2774 本系列的上一篇提到了KlayGE 4.4将会出现的高质量地形渲染.本篇仍讲一个新功能,Screen Space Sub Surface Scattering(SSSSS)和Translucency.这两个效果都是由团队成员石裕隆实现的. Sub Surface Scattering(SSS)对渲染效果的提升有很明显的左右,尤其是皮肤和植被之类物体.早在GPU Gems 1里就有在te…
转载请注明出处为KlayGE游戏引擎,本文的永久链接为http://www.klayge.org/?p=2796 上一篇我们提到了SSSSS,作为本系列的最后一篇,本文将介绍KlayGE 4.4的OpenGL和OpenGLES插件的改进. OpenGL 4.4 KlayGE在OpenGL方面一直是紧跟spec的步伐,这次也不例外.在八月份OpenGL 4.4发布的时候,glloader和KlayGE的OpenGL插件就很快加上了4.4的支持.并且这次把代码彻底过了一遍,很多原先通过扩展实现的功能…
转载请注明出处为KlayGE游戏引擎,本文的永久链接为http://www.klayge.org/?p=2749   上一篇讲了TBDR的实现,本篇继续讲解deferred rendering层的一些重要改进. 切换到ESM 原先deferred系统用的是VSM,现在切换到开销更小的ESM.具体参见我之前的一篇文章.用ESM之后只需要一个通道,空间占用减少,性能也有所提升.下个版本会进一步改成支持打包到RGBA8的纹理,让不支持浮点纹理的硬件也可以使用ESM. Multi-resolution层…
在Unity中渲染一个黑洞 前言 N年前观看<星际穿越>时,被其中的"卡冈图雅"黑洞所震撼.制作团队表示这是一个最贴近实际的黑洞效果,因为它是通过各种科学理论实现的.当时就想自己也做一个差不多的出来,无奈技术太菜.现在以掉了一堆头发为代价,终于实现出来了,分享给大家.这是最终效果: 本项目使用Unity 2018.4.23f1制作,完整项目请移步GitHub:https://github.com/RenChiyu/UnityBlackHole 转载请注明出处:https:/…
MVVM设计模式和在WPF中的实现(四) 事件绑定 系列目录: MVVM模式解析和在WPF中的实现(一)MVVM模式简介 MVVM模式解析和在WPF中的实现(二)数据绑定 MVVM模式解析和在WPF中的实现(三)命令绑定 MVVM模式解析和在WPF中的实现(四)事件绑定 MVVM模式解析和在WPF中的实现(五)View和ViewModel的通信 MVVM模式解析和在WPF中的实现(六)用依赖注入的方式配置ViewModel并注册消息 0x00 为什么要事件绑定 这个问题其实是很好理解的,因为事件…
原文:Areas 作者:Dhananjay Kumar 和 Rick Anderson 翻译:耿晓亮(Blue) 校对:许登洋(Seay) Areas 是 ASP.NET MVC 用来将相关功能组织成一组单独命名空间(路由)和文件夹结构(视图)的功能.使用 Areas 创建层次结构的路由,是通过添加另一个路由参数 area 到 Controller 和 action. Areas 提供了一种把大型 ASP.NET Core MVC Web 应用程序分为较小的功能分组的方法.Area 是应用程序内…
原文:Partial Views 作者:Steve Smith 翻译:张海龙(jiechen).刘怡(AlexLEWIS) 校对:许登洋(Seay).何镇汐.魏美娟(初见) ASP.NET Core MVC 支持局部视图,当你需要在多个不同视图间重用同一个页面部件时会显得特别有用. 什么是局部视图? 局部视图是在其它视图中被渲染的视图.局部视图执行后生成的 HTML 结果会被渲染到调用方视图或父视图中.跟视图文件一样,局部视图文件也使用 .cshtml 作为文件扩展名. 注解 如果你有 ASP.…
原文:Layout 作者:Steve Smith 翻译:娄宇(Lyrics) 校对:孟帅洋(书缘) 视图(View)经常共享视觉元素和编程元素.在本篇文章中,你将学习如何在你的 ASP.NET 应用程序中使用通用布局视图.共享指令以及在渲染视图前运行通用代码. 章节: 什么是布局视图 指定布局 导入共享指令 在视图之前运行代码 什么是布局视图 大部分 Web 应用程序在用户切换页面时,使用通用布局提供了一致的用户体验.通用布局通常包含页眉.导航栏(或菜单)以及页脚等通用 UI 元素. 在一个应用…