基于GPU Skin的骨骼动画Instance的实现

很多游戏类型需要在场景中表现大量的角色,而这些角色大多使用骨骼动画的方式来表现,传统的基于CPU蒙皮的方式在手机上对角色数量的限制非常大,本文实现了一种基于GPU Skin的方式,并且结合GPU Instance技术,将大量同类角色的蒙皮到绘制全交给GPU并行进行,并合并了同类角色的批次,本文对着种做法的性能做了测试和分析。...
阅读(577) 评论(0)

Unity中depth pass的优化以及谈谈unity中的Framebuffer

最近遇到个很小但是很有意思的问题,在unity中如何从屏幕copy depth texutrue出来用? 这个问题的来源是我发现在unity在移动平台上为了得到深度图,通常需要一个单独的pass,例如我们用到的一些后处理特效需要用刀场景深度信息,我们通过把camera的flag设置为depth tex 打开,unity就会在每帧用一个单独的pass绘制深度图,这其实很浪费,我们队全场景的顶点提交了两次,增加了大量drawcall。为了说明解决这个问题的思路,我们从framebuffer说起。...
阅读(855) 评论(5)

Unity中基于Gpu Instance进行大量物体渲染的实现与分析(一)

在3D渲染中,尤其是现代3D游戏中,我希望能够绘制越来越多的场景物体,这对于设备(尤其是移动端)的性能是个极大的考验,对于新一代的渲染api,都逐渐支持了Gpu Instancing技术,这对于大量相同物体的绘制提供了一个新的方案,在最新的unity5中也提供了对gpu instance 的支持,我尝试在unity5中利用gpu instance 技术来表现大量的植被,并对其性能进行了分析,以探索在3D手游中gpu instance的应用的可行性。...
阅读(1924) 评论(0)

优化shader程序的一些tips

在写shader的时候,其实一些写法对于其执行影响非常大,而且由于gpu和cpu在架构上的不同,代码的优化思想也不一样,最近一直在写几个shader,为了性能问题,查阅了很多资料,把一些tips总结下来。...
阅读(1144) 评论(0)

Unity3d中渲染到RenderTexture的原理,几种方式以及一些问题

虽然RenderTexture这个技术是个普遍使用的技术,但是用好它还是要理解他的底层原理和避免一些使用的问题。这里就UNITY3d中的RenderTexure介绍Rendertexture的底层原理和使用时可能遇到的坑和效率问题。...
阅读(6115) 评论(2)

do{...}while(0)的意义和用法

转自http://www.spongeliu.com/415.htmllinux内核和其他一些开源的代码中,经常会遇到这样的代码:do{ ... }while(0)这样的代码一看就不是一个循环,do..while表面上在这里一点意义都没有,那么为什么要这么用呢?实际上,do{...}while(0)的作用远大于美化你的代码。查了些资料,总结起来这样写主要有以下几点好处:1、辅助定义复杂的宏,避免...
阅读(494) 评论(5)

扩展欧几里得定理的证明和代码

扩展欧几里得定理的证明和代码...
阅读(335) 评论(0)

Alpha To Coverage

Opengles3.0新增加了一个Alpha To Coverage的特性,这是一个对Alpha Test的优化,那么这里要搞清楚Alpha to Coverage 是个什么东西。     AlphaTest 和AlphaBlend都可以用来表现(全)透明的效果,对于草,树这种,我们会使用AlphaTest表现,把不需要显示的地方镂空处理,但是AlphaTest有一个最大的问题就是边缘的硬边,导致...
阅读(569) 评论(0)

opengles中的Tessellation(曲面细分)

从opengles3.2开始,支持了一项新的特性,Tessellation Shader,这是一个新的shader,发生在顶点处理阶段,曲面细分可以在显卡上动态生成新的顶点和面,这在支持gles3.2的设备上,可以用来表现模型的lod,我们不用传输大量的顶点数据给显卡,而使显卡能够根据一定规则自动生成细节层次更多的顶点。也有应用结合高度图生成细节更加复杂的模型,因为不用再cpu这边准备高面数的模型...
阅读(797) 评论(1)

Unity5和unity4的AssetBundle打包策略对比分析

项目开始逐渐迁移到unity5上,原有用4的打包流程在5上依然是work的,基本是不用改代码的,但是5对打包做了一些改进,今天在考虑要不要改一下项目的打包代码,使用5的所谓的“”新的方式“,但是仔细研究了一下,法线其实是没必要的,5的打包没解决什么根本问题,下面我对4 和5 的打包策略进行一下对比分析,并说一下我们目前大题的打包方法。...
阅读(2407) 评论(0)

作为技术面试官,我是怎样评价一个游戏开发人员的素质的

很长一段时间,一直在负责工作室的客户端程序招聘,招聘工作已经进行了大半年,面过的程序几十个,但是最终成功发了offer的单手可数,在这过程中,pass掉了很多人,有技术总监,有大厂数年经验者,也有更多的打酱油的,HR那边可能觉得我们这边的通过率不高,究其原因,我想说现在的程序员很多,非常多,但是能够称得上研发者的取值却很难找,能称得上有经验的游戏研发人员更是屈指可数,大部分的程序员确实满足不了我们工作室的最低要求。...
阅读(6391) 评论(14)

C#中的弱引用(WeakReference

转载自:http://www.cnblogs.com/bayonetxxx/archive/2009/06/02/1494728.html我们平常用的都是对象的强引用,如果有强引用存在,GC是不会回收对象的。我们能不能同时保持对对象的引用,而又可以让GC需要的时候回收这个对象呢?.NET中提供了WeakReference来实现。弱引用可以让您保持对对象的引用,同时允许GC在必要时释放对象,回收内存...
阅读(1166) 评论(0)

C#中的析构函数

转载自http://www.cnblogs.com/paper/archive/2009/07/31/1535998.html析构函数 析构函数(destructor) 与构造函数相反,当对象脱离其作用域时(例如对象所在的函数已调用完毕),系统自动执行析构函数。析构函数往往用来做“清理善后” 的工作(例如在建立对象时用new开辟了一片内存空间,应在退出前在析构函数中用delete释放)。以C++语...
阅读(1354) 评论(0)

Unity5 新功能解析--物理渲染(PBR)与standard shader

物理渲染是UNITY5最大的亮点之一,物理渲染的采用绝对是下一个世代游戏的热点,UNITY5的大范围使用是一个可喜可贺的事情,关于什么是物理渲染,本人曾经写过一篇博客专门讨论,详见http://blog.csdn.net/leonwei/article/details/44539217。        物理渲染和当今的主流光照计算最大的区别就是,当今的lambert blinn phone基本上...
阅读(14564) 评论(0)

物理渲染(PBR)-基于物理的光照模型

对于图形学领域和图形学开发来说,实时渲染的光照模型是一个最最基础的问题,简单的来讲,光照模型就是用来描述在真实环境下,物体表面一点在在光照下的反射颜色值.有许许多多的光照模型试图用数学的公式来模拟这个问题,当然这即是一个物理问题,也是一个数学问题.大学时最初接触计算机图形学时,对书本上关于光照模型的推到过程就极为不解,最近为了研究基于物理的光照模型看到一篇10年siggrgrah的course,他是一个对基于物理的光照模型的很详细的教程,对光照模型的很多问题突然很多清晰明了了起来,尤其这篇文章中对于diff...
阅读(13078) 评论(4)
149条 共10页1 2 3 4 5 ... 下一页 尾页
    个人资料
    • 访问:761505次
    • 积分:6848
    • 等级:
    • 排名:第3504名
    • 原创:131篇
    • 转载:18篇
    • 译文:0篇
    • 评论:144条
    博客专栏
    最新评论