自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 OGRE 内部渲染流程

以下是 Ogre 的代码中的详细说明:Renderable是OGRE中所有可渲染对象的抽象接口这个接口抽象出了在渲染管线中的被分组的离散的可渲染对象基本的方法。此接口的实现类必须是基于单一的材质、单一的世界矩阵(或者是一组通过权重混合的世界矩阵),以及单一的渲染操作。通过这个说明,应该能明确的是,Renderable 封装了3D世界中被渲染对象的基本属性和数据,这包括:渲染操作,材

2013-03-28 14:17:22 892

转载 Ogre:Hardwarebuffer

Ogre中的硬件缓存是指在显卡上的存储,这和在内存上的存储一样是可以访问的。有三种硬件缓存:HardwareVertexBuffer(顶点缓存,存储顶点的各种数据)、HardwareIndexBuffer(索引缓存,存储一个mesh的面片的顶点索引),HardwarePixelBuffer(纹理缓存,存储某个纹理贴图的数据)。这些数据在程序运行时都在显卡的存储上,然而你可以去读和写这些数据,来操控

2013-03-28 14:14:33 947

转载 Ogre中Mesh的加载与渲染流程

如果新开始写一个3D渲染引擎,Mesh应该是一个很好的切入点。当一个看似简单的Mesh渲染到窗口时,说明引擎的架构已经确定,并验证了。想了解Ogre内部的机制, 可以先看看Mesh的加载过程,这里主要涉及到Resource是如何管理的,Material是怎样处理的,Resource和HardwareBuffer是如何关联的。对于前面教程代码的执行过程做一下分析:创建一个Entity(加载Mes

2013-03-28 13:35:09 1007

转载 OGRE渲染到纹理

Ogre中可以渲染到纹理,这如同渲染到屏幕上一样,具体的使用方法是:1 先创建一个纹理,用于接受渲染的内容TexturePtr renderTexture=TextureManager::getSingleton().createManual("RT",ResourceGroupManager::DEFAULT_RESOURCE_GROUP_NAME,TEX_TYPE_2D,window-

2013-03-21 14:26:02 1253

转载 OGRE资源--GPUProgram

GpuProgram在Ogre中是以Resource的形式保存。GpuProgram部分的头文件涉及如下:OgreGpuProgram.hOgreGpuProgramManager.hOgreGpuProgramParams.hOgreGpuProgramUsage.hOgreHighLevelGpuProgram.hOgreHighLevelGpuProgramMan

2013-03-21 13:44:15 833

转载 OGRE资源--Font

Resource部分源码已经解读过了,对Ogre如何管理Resource的流程有了一定的了解。下面就来具体看下每种资源的实现。Ogre中的Resource共用如下几种:Texture、Compositor、Font、GpuProgram、Material、Mesh、Skeleton、BspLevel本文的主角是Font相关的头文件有:OgreFont.hOgreFont

2013-03-21 13:42:32 976

转载 OGRE 内存管理

Ogre引擎中与内存管理相关的文件大致有以下几个(只列出头文件)OgreAlignedAllocator.hOgreMemoryAllocatedObject.hOgreMemoryAllocatorConfig.hOgreMemoryNedAlloc.hOgreMemoryNedPooling.hOgreMemoryStdAlloc.hOgreMemorySTLAll

2013-03-21 13:40:19 630

转载 OGRE文件管理

本文是关于Ogre引擎中的文件部分,该部分相关的头文件有OgreArchive.hOgreArchiveFactory.hOgreArchiveManager.hOgreFileSystem.hOgreZip.h这里所指文件的英文名为Archive,可以理解为文件、文件夹等广义上的文件容器。在代码设计中,Archive是一个文件抽象类。UML图如下:(1

2013-03-21 13:38:34 702

转载 OGRE资源管理

作为一个图形绘制引擎,需要管理非常多的图形资源,比如纹理、三角网格等。今天就来看下Ogre中资源管理部分。Ogre中资源管理部分大致包含以下头文件:OgreResource.hOgreResourceGroupManager.hOgreResourceManager.h这部分代码内容不少,但只要能理清这几个类之间的关系,Resource管理的方式也就可见一斑。先附上一张

2013-03-21 13:35:38 1073

转载 stringstream clear()的误区

stringstream是个好东西,网上有不少文章,讨论如何用它实现各种数据类型的转换(比如把double或int转换为string类型)。但如果stringstream使用不当,当心内存出问题(我就吃过亏^_^)。试试下面的代码,运行程序前打开任务管理器,过不了几十秒,所有的内存都将被耗尽!#include #include #include using namespac

2013-03-19 14:59:56 897

转载 TCP 抓包过程中的几个状态

TCP传输协议抓包经验TCP传输通信时的几个状态TCP  Window UpdateTCP  Previous segment lostTCP  Dup  ACK XXXX#X;TCP  RetransmissionTCP  Previous segment lost,它告诉发送方数据段丢失;TCP  Dup  ACK X

2013-03-18 13:47:00 3640

转载 Boost.Asio技术文档

asioAsioboostBoostc++C++异步IO目录(?)[+]综述基本原理核心概念和功能解析BoostAsioProactor设计模式无线程并发Proactor和BoostAsioProactor 设计模式使用Reactor的实现实现Windows的重叠IO优点缺点线程和BoostAsio线程安全线程池内部线程Strands

2013-03-17 23:09:04 2291

转载 完成端口(CompletionPort)详解

手把手叫你玩转网络编程系列之三   完成端口(Completion Port)详解                                                           ----- By PiggyXP(小猪)前 言         本系列里完成端口的代码在两年前就已经写好了,但是由于许久没有写东西了,不知该如何提笔,所以这篇文档总是在酝酿

2013-03-17 23:06:43 1961 1

转载 C++ Scoket编程

介绍 Socket编程让你沮丧吗?从man pages中很难得到有用的信息吗?你想跟上时代去编Internet相关的程序,但是为你在调用 connect() 前的bind() 的结构而不知所措?等等…好在我已经将这些事完成了,我将和所有人共享我的知识了。如果你了解 C 语言并想穿过网络编程的沼泽,那么你来对地方了。读者对象 这个文档是一个指南,而不是参考书。如果你刚开始 socke

2013-03-17 23:04:26 3473

转载 非阻塞模式WinSock编程入门 使用 WSAAsyncSelect模型

非阻塞模式WinSock编程入门 介绍WinSock是Windows提供的包含了一系列网络编程接口的套接字程序库。在这篇文章中,我们将介绍如何把它的非阻塞模式引入到应用程序中。文章中所讨论的通信均为面向连接的通信(TCP),为清晰起见,文章对代码中的一些细枝末节进行了删减,大家可以依照文末的链接下载完整的工程源码来获取这部分内容。 阻塞模式WinSock         下

2013-03-17 18:46:31 2809 1

转载 服务器性能瓶颈分析方法

1. 内存分析方法   内存分析用于判断系统有无内存瓶颈,是否需要通过增加内存等手段提高系统性能表现。   内存分析需要使用的计数器:Memory类别和Physical Disk类别的计数器。内存分析的主要方法和步骤:   (1)首先查看Memory\Available Mbytes指标   如果该指标的数据比较小,系统可能出现了内存方面的问题,需要继续下面步骤进一步分析。注:

2013-03-17 18:30:37 901

转载 winsock的select模型

select函数:           系统提供select函数来实现多路复用输入/输出模型。原型:         #include sys/time.h>         #include unistd.h>         int select(int maxfd,fd_set *rdset,fd_set *wrset,fd_set *exset,struct timeval

2013-03-17 18:24:10 703

转载 winsock的阻塞和非阻塞通信模型

摘要:在应用程序开发中,经常涉及各式各样的机器的交互通信问题。在Windows操作系统下,可以使用MFC中的CSocket,也可以使用以Windows Api为基础的Winsock等等。本文主要描述了Winsock的两种实现方式,即阻塞方式和非阻塞方式。并对应这两种方式,描述了Select模式和IOCP模式。关键字:Winsock Blocking  NonBlocking  Select模式

2013-03-16 11:38:44 3300

转载 std::string详解

之所以抛弃char*的字符串而选用C++标准程序库中的string类,是因为他和前者比较起来,不必 担心内存是否足够、字符串长度等等,而且作为一个类出现,他集成的操作函数足以完成我们大多数情况下(甚至是100%)的需要。我们可以用 = 进行赋值操作,== 进行比较,+ 做串联(是不是很简单?)。我们尽可以把它看成是C++的基本数据类型。标准模板库(STL)提供了一个std::strin

2013-03-15 12:27:01 15271

原创 fatal error C1001: 编译器中发生内部错误。

用vs2005在构建版本时时出现如下错误:24>C:\Program Files (x86)\Microsoft Visual Studio 8\VC\include\xmemory(165) : fatal error C1001: 编译器中发生内部错误。24>(编译器文件“msc1.cpp”,第 1392 行)24> 要解决此问题,请尝试简化或更改上面所列位置附近的程序。

2013-03-13 10:40:43 14793 1

转载 大端法、小端法、网络字节序

关于字节序(大端法、小端法)的定义《UNXI网络编程》定义:术语“小端”和“大端”表示多字节值的哪一端(小端或大端)存储在该值的起始地址。小端存在起始地址,即是小端字节序;大端存在起始地址,即是大端字节序。也可以说: 1.小端法(Little-Endian)就是低位字节排放在内存的低地址端即该值的起始地址,高位字节排放在内存的高地址端。 2.大端法(Big-Endian)就是高

2013-03-12 17:33:48 823

转载 DLL的概念、dll导出类

1、 DLL的概念DLL(Dynamic Linkable Library),动态链接库,可以向程序提供一些函数、变量或类。这些可以直接拿来使用。静态链接库与动态链接库的区别:(1)静态链接库与动态链接库都是共享代码的方式。静态链接库把最后的指令都包含在最终生成的EXE文件中了;动态链接库不必被包含在最终EXE文件中,EXE文件执行时可以“动态”地引用和卸载这个与EXE独立的DLL文件

2013-03-11 17:13:36 878

转载 QSetting

QSetting是一个平台无关的可以设置和读取应用程序设置的类用户可能希望应用程序记住自己应用程序的设置,windows记录在注册表中,mac中记录在xml中,在unix中,缺乏标准,所以很多都记录在.ini文本文件中QSetting的API都是基于QVariant的,允许保存很多类型的数据,例如QString,QRect,和QImage基本用法:当创建一个QSetting对象

2013-03-08 11:18:05 937

转载 __declspec(dllimport)的作用

是时候总结一下__declspec(dllimport)的作用了。可能有人会问:__declspec(dllimport)和__declspec(dllexport)是一对的,在动态链接库中__declspec(dllexport)管导出,__declspec(dllimport)管导出,就像一个国家一样,有出口也有进口,有什么难理解的呢?这是一种很自然的思路,开始我也是这样理解。

2013-03-07 16:31:50 616

转载 Synergy 配置详解

Synergy的确是一个不可思议的软件, 在此先谢谢smalldust 的推荐。Synergy可以算作一款远程控制软件。一般的远程控制软件都是将服务器的画面提供给客户端使用, 而Synergy的创意很独特,它将客户端的键盘和鼠标提供给服务器使用。 这样如果你有多台电脑并且每台电脑都有自己的显示器,你可以通过 Synergy 用一组键盘和鼠标控制所有电脑, 而且每台电脑的屏幕可以连接起来

2013-03-07 16:13:38 4773

转载 拷贝构造函数详解

一. 什么是拷贝构造函数首先对于普通类型的对象来说,它们之间的复制是很简单的,例如:[c-sharp] view plaincopyprint?int a = 100;  int b = a;   int a = 100;int b = a; 而类对象与普通对象不同,类对象内部结构一般较为复杂,存在各种成员变量。下面看一个类对象拷贝的简单

2013-03-06 10:32:03 728

unitypatcher_2018_v1v2亲测可用

unitypatcher_2018_v1v2亲测可用

2018-11-25

UniPatcher_v2017.6 Unity2017.3亲测可用

UniPatcher_v2017.6 Unity2017.3亲测可用 支持Unity2017.1 ,Unity2017.2,Unity2017.3

2018-03-03

PBR物理渲染的美术流程

PBR物理渲染的美术流程 翻译版 本文是2012年的出品,3A的技术也不算主流的,所以阅读时也要和有所分辨。

2015-10-16

空空如也

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

TA关注的人

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