自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(53)
  • 资源 (3)
  • 收藏
  • 关注

转载 齐次坐标概念&&透视投影变换推导

齐次坐标概念&&透视投影变换推导发表于: 2015-10-27   作者:互联网   来源:转载   浏览次数:3 透视投影是3D固定流水线的重要组成部分,是将相机空间中的点从视锥体(frustum)变换到规则观察体(Canonical View Volume)中,待裁剪完毕后进行透视除法的行为。在算法中它是通过透视矩阵乘法和透视除法两步完成的。

2016-11-30 16:00:10 1454

转载 四元数和欧拉角以及方向余弦的区别

四元数和欧拉角以及方向余弦的区别2014-03-28 22:51 2078人阅读 评论(0) 收藏 举报 分类:空间坐标变换的矩阵表示法(4) 版权声明:本文为博主原创文章,未经博主允许不得转载。欧拉角定义的是三次基本旋转的三个角度,旋转顺序和旋转参考轴随不同领域有不同,在飞机上常用的是Z-X-Y规则,三次顺序旋转

2016-11-30 15:56:45 902

转载 透视投影详解

透视投影详解概述投影变换完成的是如何将三维模型显示到二维视口上,这是一个三维到二维的过程。你可以将投影变换看作是调整照相机的焦距,它模拟了为照相机选择镜头的过程。投影变换是所有变换中最复杂的一个。视锥体视锥体是一个三维体,他的位置和摄像机相关,视锥体的形状决定了模型如何从camera space投影到屏幕上。最常见的投影类型-透视投影,使得离摄像机近的物体投影后较大

2016-11-30 14:23:05 1672

转载 简单的透视投影

简单的说,视景体裁剪发生在透视投影之后,透视除法之前,所以不会发生你说的错误。另外纠正一个说法,透视投影是把向量投影到裁剪空间,而不是所谓的“投影平面上”。复杂的说:如果显卡是你做的,你想怎么裁剪都可以,在透视除法之前的任何阶段裁剪都可以,用普通高中生的解析几何都行。但是,有一种公认比较简单的裁剪方法:设原有向量,投影矩阵,投影后为,此时

2016-11-30 14:22:00 1241

转载 四元数和欧拉角以及方向余弦的区别

四元数和欧拉角以及方向余弦的区别2014-03-28 22:51 2078人阅读 评论(0) 收藏 举报 分类:空间坐标变换的矩阵表示法(4) 版权声明:本文为博主原创文章,未经博主允许不得转载。欧拉角定义的是三次基本旋转的三个角度,旋转顺序和旋转参考轴随不同领域有不同,在飞机上常用的是Z-X-Y规则,三次顺序旋转

2016-11-30 10:42:21 1727

转载 齐次空间的裁剪-为什么不在投影除法后裁剪重要

图形流水线中齐次空间的裁剪(1)1. 本文将分为下面三部分引入:为什么不在投影除法后裁剪?为什么能用齐次坐标进行裁剪使用齐次坐标裁剪的步骤2. 引入:为什么不在投影除法后裁剪       在齐次空间对顶点和线裁剪是如今图形学管线进行裁剪的标准做法。一个世界坐标系下点经过观察变换后会映射到屏幕空间,在这其中会经过如下的矩阵变换:世界坐标系到相机坐标系的变化,相机坐标系下的透视

2016-11-30 10:41:39 1989

转载 《向量积分配律的证明》证明书

《向量积分配律的证明》证明书向量积分配律的证明三维向量外积(即矢积、叉积)可以用几何方法证明;也可以借用外积的反对称性、内积的分配律和混合积性质,以代数方法证明。下面把向量外积定义为:a × b = |a|·|b|·Sin.分配律的几何证明方法很繁琐,大意是用作图的方法验证。有兴趣的话请自己参阅参考文献中的证明。下面给出代数方法。我们假定已经知道了:

2016-11-30 10:05:42 6671 1

转载 OpenGL 透视投影 齐次裁剪空间 深度缓存

OpenGL 透视投影 齐次裁剪空间 深度缓存标签: c++OSGOpenGLz-buffer深度缓冲2015-05-14 15:30 2910人阅读 评论(0) 收藏 举报 分类:OpenGL(13) 版权声明:本文为博主原创文章,未经博主允许不得转载。对于从事三维方面的 ,透视投影公式应该不陌生,如下:

2016-11-30 09:10:43 1176

转载 从Model Space到Canonical view volume转换矩阵的计算

从Model Space到Canonical view volume转换矩阵的计算 (2011-10-12 13:18:39)转载▼标签: canonical view volume model space 3d opengl 矩阵 分类: 技术

2016-11-30 09:02:01 1777 1

转载 图形学笔记 —— 透视除法

图形学笔记 —— 透视除法本文采用左手坐标系,即z轴向屏幕里增长。透视投影变换透视投影变换,有三个词组成:透视、投影、变换。我们逐个来理解。透视:我理解为“有远近感”的,也就是我们平时所说的近大远小。而相对地,近少远多:你站在山顶上,近处你只能看见附近几棵花花草草,但是远处你可以远眺整个城市这么多东西。如果你把人视野内的东西还原回去三维,它们大概会分布在一个圆台上,不是么。说到

2016-11-30 08:59:09 2889

转载 OpenGL矩阵推导——模型视图变化

OpenGL矩阵推导——模型视图变化标签: 视图模型变换opengl2013-10-29 10:56 915人阅读 评论(0) 收藏 举报 分类:图形学(6)  openGL(12) http://blog.sina.com.cn/s/blog_a401a1ea0101f1k3.htmlOpenGL矩阵推导——模型视图变化

2016-11-30 08:56:33 946

转载 光线与包围盒(AABB)的相交检测算法

光线与包围盒(AABB)的相交检测算法分类:==计算图形学== (540)  (1)这里介绍两种算法,第一种比较容易理解下面是Cocos2dx中实现Ray-AABB相交(碰撞)检测的算法,说明看注释[cpp] view plain copy bool Ray::interse

2016-11-29 17:01:44 4046 1

转载 [算法][包围盒]球,AABB,OBB

[算法][包围盒]球,AABB,OBB参考地址请看图片水印:http://www.cnblogs.com/iamzhanglei/archive/2012/06/07/2539751.html http://blog.sina.com.cn/s/blog_6a1bf1310101g7zy.html包围体是一个简单的几何空间,里面包含着复杂形状的物体。为物体添加包围体的目

2016-11-29 16:29:38 2066

转载 Lua coroutine 不一样的多线程编程思路

Lua coroutine 不一样的多线程编程思路2009-04-26 17:30:00标签:线程 Lua coroutine 思路 休闲原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://timyang.blog.51cto.com/1539170/307675上周末开始看《Lua程序设计》第二

2016-11-24 15:43:41 421

原创 is_base_of

让我们通过看看步骤来了解它的工作原理。从sizeof开始(check(Host (),int()))part。有两个候选重载可用,template yes check(D *,T);和无校验(B *,int)。如果选择第一个,你得到sizeof(是),否则sizeof(no)接下来,让我们来看看重载分辨率。第一个重载是模板实例化检查(D *,T = int),第二个候选是check(B

2016-11-24 11:58:38 656

转载 is_base_of

`is_base_of'如何工作?(How does `is_base_of` work?) C/C++IT屋 2016/10/11 20:27:02 百度翻译此文   有道翻译此文问 题How does the following code work?typedef char (&yes)[1];typ

2016-11-24 09:13:09 1815

转载 Lua co-routines

Lua co-routinesup vote7down votefavorite1http://stackoverflow.com/questions/7206411/lua-co-routinesI'm trying to get an understanding of how I can use co-

2016-11-23 19:56:11 392

转载 Lua中的协同程序 coroutine

int running = 1;int lua_finish(lua_State * L) {running = 0;printf("lua_finish called\n");return 0;}int lua_sleep(lua_State *L) {printf("lua_sleep called\n");//lua_pushnumber(L, 10)

2016-11-23 19:55:13 343

转载 Calling a v8 javascript function from c++ with an argument

Calling a v8 javascript function from c++ with an argumentup vote18down votefavorite8I am working with c++ and v8, and have run into the following challenge: I

2016-11-22 15:04:46 767

转载 lua coroutine

http://www.thinksaas.cn/topics/0/494/494488.html 现在Lua就成功的配置到Xcode中了。二、使用Lua使用Lua,首先要在本地新建Lua文件。比如要在iPhone中使用,可以将文件建立在App下的Documents文件夹下,或者可以放在服务器端,使用时下载下来。比如此处我新建了两个Lua文件,一个叫Eng

2016-11-18 16:44:31 260

转载 lua_tothread

Hello.Call to lua function from c using yielded lua_State works fine. But same call with line hook set crashes in lvm.c line 71. Lua version 5.1.4 Code to reproduce:#include extern "

2016-11-18 16:39:59 781

转载 C/C++ 与lua混合使用入门讲的比较好的文章

转载一篇将C/C++ 与lua混合使用入门讲的比较好的文章转自 http://www.open-open.com/home/space-6246-do-blog-id-1426.html Lua是一个嵌入式的脚本语言,它不仅可以单独使用还能与其它语言混合调用。Lua与其它脚本语言相比,其突出优势在于:可扩展性。Lua的扩展性非常卓越,以至于很多人把Lua用作搭建领域

2016-11-18 16:35:38 3459

转载 Lua coroutine.create

Lua coroutine.creat相当于在C ++中使用lua_newthread(Equivalent of Lua coroutine.create in C++ using lua_newthread)

2016-11-18 16:32:51 1118

转载 Lua coroutines and C++

Lua coroutines and C++Posted on November 21, 2010by kristianrTonight I played around with coroutines in Lua. After some Googling I figured out how to create and communicate with a Lua-th

2016-11-18 16:28:44 322

转载 Calling lua functions from .lua's using handles?

Calling lua functions from .lua's using handles?up vote0down votefavorite5I'm working on a small project trying to integrate lua with c++. My problem howeve

2016-11-18 09:38:08 385

转载 Use of pushglobaltable and setfenv in Lua5.3

Use of pushglobaltable and setfenv in Lua5.3up vote1down votefavoritehow to get luathread function with same function name in diffent luathreads in Lua 5.3?

2016-11-17 18:04:22 529

转载 5.1 setfenv,但5.3可以使用lua_getglobal(l1, "_G");

lua_State *L = luaL_newstate();luaL_openlibs(L);dostring(L, "function f1() my_var = 100 print('var set') end");/* create func on state *//* ^-- a wrapper which does loadstring + pcall with error h

2016-11-17 17:18:41 2392

转载 5.2lua setfenv

local FuncEnv={}  setmetatable(FuncEnv, {__index = _G})  local func=loadfile("a.lua")--local func=loadfile("a.lua", nil, FuncEnv) local _ENV=FuncEnv--setfenv(func,FuncEnv)()--等价于setfenv(func

2016-11-17 16:27:46 654

转载 5.2 可变参数

5.2 可变参数Lua函数可以接受可变数目的参数,和C语言类似在函数参数列表中使用三点(...)表示函数有可变的参数。Lua将函数的参数放在一个叫arg的表中,除了参数以外,arg表中还有一个域n表示参数的个数。例如,我们可以重写print函数:printResult = "" function print(...)    for i,v in ipai

2016-11-17 16:01:31 253

转载 luajit缺点

作者:paintsnow链接:https://www.zhihu.com/question/49144449/answer/123116906来源:知乎著作权归作者所有,转载请联系作者获得授权。其实我是不主张在开发时就用LuaJIT的,因为这样会把人养懒…… 因为JIT的强大性能,掩盖了太多代码中的低效实现,反而最后想要提升性能已经不可能了==回到正题,我的建议是,如果

2016-11-17 15:53:13 5730

转载 luajit struct

This page is intended to give you an overview of the features of the FFI library by presenting a few use cases and guidelines.This page makes no attempt to explain all of the FFI library, though.

2016-11-17 15:27:50 596

转载 luajit官方性能优化指南和注解

luajit官方性能优化指南和注解luajit是目前最快的脚本语言之一,不过深入使用就很快会发现,要把这个语言用到像宣称那样高性能,并不是那么容易。实际使用的时候往往会发现,刚开始写的一些小test case性能非常好,经常毫秒级就算完,可是代码复杂度一上去了,动辄几十上百毫秒的情况就会出现,性能表现非常飘忽。为此luajit的mailling list也是有不少人咨询,作者m

2016-11-17 13:50:54 1163

转载 A template class for binding C++ to Lua

A template class for binding C++ to Lua标签: classc++bindingconstructorluafunction2006-09-09 15:50 1397人阅读 评论(0) 收藏 举报目录(?)[+]http://www.lua.org/notes/ltn005.html Techn

2016-11-17 13:17:47 401

转载 Lua中的环境概念

Lua中的环境概念2014-07-29 分类:Lua 阅读(1834)评论(12) 前言Lua将其所有的全局变量保存在一个常规的table中,这个table称为“环境”。这种组织结构的优点在于,其一,不需要再为全局变量创造一种新的数据结构,因此简化了Lua的内部实现;另一个优点是,可以像其他table一样操作这个table。为了便于实施这种操作,Lua将环境table自身保存在

2016-11-17 13:04:53 1040

转载 Lua解析和变量作用域

近期研究了一下Lua语言在解析时的一些细节,如果在C程序中执行lua脚本的话, 那么变量的作用域是非常值得关注的,这里记录一下在分析过程中得到的一些结论。(本文的描述针对的是lua-5.1.5这个版本的代码) 考察下面的两段代码:scope.lua 1 b = 700 -- GT['b'] = 700 2 local a = 9 -

2016-11-17 13:03:45 2176

转载 setfenv 5.1

local FuncEnv={}  setmetatable(FuncEnv, {__index = _G})  local func=loadfile("a.lua")  setfenv(func,FuncEnv)()--等价于setfenv(func,FuncEnv);func(); --func()--FuncEnv.test()print(FuncEnv.abc)

2016-11-17 11:47:12 258

转载 setfenv

https://segmentfault.com/a/11900000027235464 辅助库辅助库为我们用 Lua 与 C 的通信提供了一些方便的函数。基础 API 提供 Lua 与 C 交互的所有原始函数。辅助库作为更高层次的函数来解决一些通用的问题。辅助库的所有函数定义在头文件 luaxlib.h 中,函数带有前缀 luaL_ 。辅助库函数是建立在基础库之上的,所以

2016-11-15 13:35:47 1831

转载 Lua和C++交互详细总结

Lua和C++交互详细总结转自:http://cn.cocos2d-x.org/tutorial/show?id=1474一、Lua堆栈要理解Lua和C++交互,首先要理解Lua堆栈。简单来说,Lua和C/C++语言通信的主要方法是一个无处不在的虚拟栈。栈的特点是先进后出。在Lua中,Lua堆栈就是一个struct,堆栈索引的方式可是是正数也可以是负数,区别是:正数索引

2016-11-15 12:47:37 437

转载 luna

lua绑定C++对象学习>中学习了闭包,元表和lua的面向对象实现后,我被的元机制震撼了,果断体会到了如果把自己禁锢在C++的圈子里坐井观天是多么的可惜.来看看超轻量级对象绑定luna类的使用和实现吧.首先,它的使用比较简单(luna没实现继承,类型检查等,毕竟只是一个可供借鉴和学习的最基础实现而已),代码如下: 1 extern "C" 2 { 3

2016-11-15 10:55:41 2647

转载 setenv setfenv

setenv是在lua5.1中有的改变函数作用域的函数。用法是setenv(func or number,tbl),第一个参数可以是数字也可以是函数,数字1表示当前的作用于,2表示上一层的作用域,特殊情况0,setfenvchanges the environment of the running thread. In this case,setfenv returns no values

2016-11-15 07:01:44 1115

va可以使用,大家请放心使用,谢谢你们

va可以使用,大家请放心使用,谢谢你们,Visual Assist 10.9 -2302 版本可以使用

2019-02-25

d3d11 Render To Texture, RTT

渲染到贴图,使用Render To Texture, RTT, 渲染到纹理的详细代码

2019-02-19

显示uv坐标

unity显示uv坐标

2018-10-23

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除