随笔分类 - 其他
摘要:之前一直没有很仔细的地思考过Blend这个概念,唯一的映像就是$C_o = C_s Alpha+C_d (1 Alpha)$。所以在软件渲染器中也只是理论上支持这个东西,但实际上却只做了深度测试。现在来仔细看一看这个玩意儿,也记录一下透明物体渲染的东西。 Blending 这部分主要参考DX...
阅读全文
摘要:原文地址:http://www.cnblogs.com/zplutor/archive/2011/09/17/2179756.html我对.Net的委托模型印象很深刻,使用委托,可以快速实现观察者模式,免去写很多繁杂重复的代码。遗憾的是,C++并没有提供这样的模型,为了达 到相似的目的,需要继承一个...
阅读全文
摘要:近段时间做一个关于水面的动画。由于我用c++实现水面动画的,然而使用c++我自己的渲染系统渲染结果被同学说是可视化不叫渲染,所以我决定修改一下……恰好进来在学习pbrt,所以索性就蛋疼了考虑直接用pbrt来渲染吧……(至于为什么,仅为好玩儿……)pbrt默认的渲染方式是使用一个场景描述文件.pbrt...
阅读全文
摘要:WIP源代码:GithubOSC镜像对象系统以对象为中心,对象系统的最基本设计策略是基于组件的设计。对象系统将尽量避免使用继承方式来拓展游戏对象,恰当的使用Mix-in来来最属性做拓展,单个属性可以适当使用继承。每个游戏对象都是由属性组装起来的。组件分为两种,c++组件和脚本组件,脚本组件是在脚本中...
阅读全文
摘要:上篇讲述了一维FFT的GPU实现(FFT算法实现——基于GPU的基2快速傅里叶变换),后来我又由于需要做了一下二维FFT,大概思路如下。首先看的肯定是公式:如上面公式所描述的,2维FFT只需要拆分成行FFT,和列FFT就行了,其中我在下面的实现是假设原点在F(0,0),由于我的代码需要原点在中心,所...
阅读全文
摘要:最近做一个东西,要用到快速傅里叶变换,抱着蛋疼的心态,自己尝试写了一下,遇到一些问题。首先看一下什么叫做快速傅里叶变换(FFT)(来自Wiki):快速傅里叶变换(英语:Fast Fourier Transform, FFT),是离散傅里叶变换的快速算法,也可用于计算离散傅里叶变换的逆变换。快速傅里叶...
阅读全文
摘要:最近学习计算机动画,看书千万遍都不如动手做一遍,实现了一下完整的人物蒙皮,遇到一些问题,现在把完整的实现过程记一下。理论在前一篇已经讲完了,前面也实现了基本的关节动画,现在要实现的是,使用3Dmax建立一个完整的模型,然后使用它来进行蒙皮。我的基础工具写的不是很完善,为了不分心去写其他的东西,就用了...
阅读全文
摘要:一般在做坐标变换的时候,会将所有顶点全部乘以一个矩阵,转换到对应的坐标系中,但是对于法线使用相同的转换是有问题的,下图解释了为什么会有问题存在:也就是法线在做相同变换后,如果变换中包含不一致的缩放(x,y,z不同),结果法线就已经不再垂直表面了(想象变形后的切线之间角度都变了),需要重新调整,所以使...
阅读全文
摘要:最近刚开始接触计算机动画,一片空白,尝试做了一下3D蒙皮,发现数学真是差得难以想象,矩阵的什么的全部忘记了,真是接下来该恶补一下基础了……在这里把遇到的几个问题记录一下。主要参考书目:《计算机动画算法与技术》《3D游戏》(英国人写的书已经绝版了)《3D游戏引擎设计——实时计算机图形学应用方法》 《骨...
阅读全文
摘要:头盔原理很简单,大致就是使用两个透镜,缩短眼睛的焦距,将两个眼睛看到的东西合二为一从而产生双屏3D效果。于是开始设想:既然有了3D效果,为了达到更加沉浸的体验,为何不将头部的运动也映射到虚拟世界中去呢?抱着这个想法,我们做了如下尝试:把头部数据(如旋转角、俯仰角等等)用陀螺仪接收传回电脑,为了简单起...
阅读全文
摘要:在渲染管线中是最慢的阶段决定整个渲染的速度。我们一般使用吞吐量(throughput)来描述一个阶段的处理速度,而不是帧率。因为帧率会受到设备更新的限制而导致实际速度比帧率所标示的更慢。一个例子:假设一个设备为60赫兹,这意味着这个设备16.666666ms刷新一次,这时恰好有一管线阶段花费了62....
阅读全文
摘要:原文:http://blog.sina.com.cn/s/blog_4caedc7a0102v6mu.html一篇优秀的论文应该是这样的广大的研究同仁介绍了这篇论文所包含的重要想法和所获得的结果在论文中描述清楚你的想法和所获得的结果基于你所做的东西,提供一些具有洞察性的见解为什么论文的撰写是需要引起...
阅读全文
摘要:最近做一个关于kinect的东西,主要是在RGB图上提取指定的平面。对于kinect也是刚刚接触不是很熟悉,捣鼓了两天做了很粗糙的东西,但是也学到了一些东西,所以记录一下。思路大概就是:在RGB中选择一个感兴趣的平面,标定三个点来指定这个平面,由kinect深度图获取指定点的深度,也就是这个点在ki...
阅读全文
摘要:定义wrap类,声明native函数,加载库package com.ndk.hello;public class Classs { public native String say_hello(); static { System.loadLibrary("Hello...
阅读全文
摘要:四、优化调整1、优化过大场景2、利用相机剔除或关卡流等方式优化场景的运行3、优化灯光光照图、着色器表达式的简化来获得最佳表现4、程序的编写
阅读全文

浙公网安备 33010602011771号