
C/C++
jiexuan357
记录学习的点点滴滴。
闻道有先后,术业有专攻,如是而已。
展开
-
游戏程序中的骨骼插件
文/潘李亮引言 在3D引擎中,骨骼动画系统是非常重要的一个组成部分,虽然在一个游戏的真正开发过程中,一个优秀的游戏引擎也许不需要用户去关心它的骨骼动画系统是如何实现的,但是还是有很多人希望了解这样的一个技术。本文将会介绍骨骼动画系统里的一个基础部件:3Ds MAX 的骨骼动画导出插件。3Ds Max SDK和插件系统最新版本MAX9的MAXSDK包含在安装转载 2012-06-25 11:47:19 · 487 阅读 · 0 评论 -
基于MMX指令集的程序设计简介
MMX技术简介 Intel 公司的MMX™(多媒体增强指令集)技术可以大大提高应用程序对二维三维图形和图象的处理能力。Intel MMX技术可用于对大量数据和复杂数组进行的复杂处理,使用MMX技术可处理的数据基本单位可以是字节(byte)、字(word),或者是双字(double-word)。 Visual Studio .NET 2003提供了对MMX指令集特性的支持,从而可转载 2012-12-03 22:22:06 · 448 阅读 · 0 评论 -
C++多重继承和虚拟继承对象模型、效率分析
原文链接http://blog.youkuaiyun.com/ocean2006/article/details/5836210# 本文简单介绍多态和多重继承、虚拟继承的基本概念。随后重点分析了C++中对象模型之间的差异和运行效率。一、多态 C++多态通过继承和动态绑定实现。继承是一种代码或者功能的传承共享,从语言的角度它是外在的、形式上的,极易理解。而动态绑定则是从语转载 2012-12-04 09:56:07 · 371 阅读 · 0 评论 -
基于SSE指令集的程序设计简介
SSE技术简介 Intel公司的单指令多数据流式扩展(SSE,Streaming SIMD Extensions)技术能够有效增强CPU浮点运算的能力。Visual Studio .NET 2003提供了对SSE指令集的编程支持,从而允许用户在C++代码中不用编写汇编代码就可直接使用SSE指令的功能。MSDN中有关SSE技术的主题[1]有可能会使不熟悉使用SSE汇编指令编程的初学者感转载 2012-12-03 17:21:21 · 435 阅读 · 0 评论 -
SSE指令集入门
原文地址:http://blog.youkuaiyun.com/wensishuai/article/details/8439418Intel公司的单指令多数据流式扩展(SSE,Streaming SIMD Extensions)技术能够有效增强CPU浮点运算的能力。Visual Studio .NET 2003提供了对SSE指令集的编程支持,从而允许用户在C++代码中不用编写汇编代码就可直接使用SSE指转载 2013-06-13 09:41:04 · 671 阅读 · 0 评论 -
Linux下调用pthread库实现简单线程池
[c-sharp] view plaincopy#include #include #include #include #include #include void * routine(void * arg); int pool_add_job(void *(*process)(void * arg),void转载 2014-03-10 23:00:18 · 544 阅读 · 0 评论 -
Linux下通用线程池的创建与使用
原帖地址:http://blog.youkuaiyun.com/born1985man/article/details/4682515Linux 下通用线程池的创建与使用本 文给出了一个通用的线程池框架,该框架将与线程执行相关的任务进行了高层次的抽象,使之与具体的执行任务无关。另外该线程池具有动态伸缩性,它能根据执行 任务的轻重自动调整线程池中线程的数量。文章的最后,我们给出一个简单示例程序,转载 2014-03-10 23:01:46 · 572 阅读 · 0 评论 -
Pthread
原帖地址:http://baike.baidu.com/link?url=CHBvNgchPhkRFrfSg5fk2E7dzvQl2iRV2hJICRr_1eag6pbB0ooBLSUVmGKwkMvzPOSIX线程(POSIX threads),简称Pthreads,是线程的POSIX标准。该标准定义了创建和操纵线程的一整套API。在类Unix操作系统(Unix、Linux、转载 2014-03-10 19:56:44 · 583 阅读 · 0 评论 -
3D API中,字体绘制的Batch优化
原文地址:http://blog.youkuaiyun.com/nhsoft/article/details/7788547在3D引擎中绘制字符是很恶心的事情。一个个绘制吧又太慢。组成一个大mesh吧。又太耗引擎的人品。而且还是得lock/unlock vb。才绘制了一百多个字。 fps从600掉到80多。经过跟别人的讨论。pos之类的数据用shader constant来传递会效转载 2012-12-03 13:30:38 · 437 阅读 · 0 评论 -
#pragma warning指令
该指令允许有选择性的修改编译器的警告消息的行为指令格式如下:#pragma warning( warning-specifier : warning-number-list [; warning-specifier : warning-number-list...]#pragma warning( push[ ,n ] )#pragma warning( pop )主要用到的警转载 2012-11-13 15:00:11 · 992 阅读 · 0 评论 -
二叉树的应用详解 - 数据结构
原文地址:http://blog.youkuaiyun.com/hguisu/article/details/7686515概述:平衡树——特点:所有结点左右子树深度差≤1排序树——特点:所有结点“左小右大字典树——由字符串构成的二叉排序树判定树——特点:分支查找树(例如12个球如何只称3次便分出轻重)带权树——特点:路径带权值(例如长度)最优树——是带权路径长度最转载 2012-06-26 23:19:20 · 1024 阅读 · 0 评论 -
面向GPU的多LOD因子的大规模场景可视化策略
面向GPU的多LOD因子的大规模场景可视化策略张嘉华 梁成 陈利强 陈春华newzjh@msn.com aliceliang@163.net sailmer@hotmail.com musalan@msn.com华南理工大学计算机科学与工程学院(510640)图 1. 多LOD因子控制的大规模地形渲染(C1=1.03,C2=19.55,C3=0.868 下山转载 2012-06-26 23:22:53 · 1251 阅读 · 0 评论 -
正则表达式30分钟入门教程
一些要说的话:如果你没有正则表达式的基础,请跟着教程“一步步来”。请不要大概地扫两眼就说看不懂——以这种态度我写成什么样你也看不懂。当我告诉你这是“30分钟入门教程”时,请不要试图在30秒内入门。事实是,我身边有个才接触电脑,对操作都不是很熟练的人通过自己学习这篇教程,最后都能在文章采集系统中使用正则表达式完成任务。而且,他写的表达式中,还使用了“零宽断言”等“高级”技术。转载 2012-07-09 10:47:47 · 328 阅读 · 0 评论 -
#define用法总结
刚开始接触VC++的同学们,估计对这个东西有这莫大的恐惧。这个经常写在添加头文件的地方的奇怪语句。如果看过mfc那么,那么拿出一些application framework里面的宏,估计会吓死一片。说了这么多只是想说,不明白其用法的人很害怕,但要是知道它,熟悉它,那么你会觉得它很美妙。 进入正题:#define的个用法: 1:#define MAX 0x18第一个用法转载 2012-07-09 15:02:56 · 475 阅读 · 0 评论 -
怎样使用C++回调函数
程序员常常需要实现回调。本文将讨论函数指针的基本原则并说明如何使用函数指针实现回调。注意这里针对的是普通的函数,不包括完全依赖于不同语法和语义规则的类成员函数(类成员指针将在另文中讨论)。声明函数指针 回调函数是一个程序员不能显式调用的函数;通过将回调函数的地址传给调用者从而实现调用。要实现回调,必须首先定义函数指针。尽管定义的语法有点不可思议,但如果你熟悉函数声明的一般方法转载 2012-07-23 14:41:41 · 504 阅读 · 0 评论 -
回调函数定义和使用
最近经常使用回调函数,有时感觉有点混乱,对回调函数理解不透,昨天花点时间深深品味了一下回调函数,写下博客记录一下,言规正转,VC中的定时器是一种特殊的回调函数,只要我们设置好了定时器,我们就不用管什么时候调用定时器处理函数,是操作系统负责调用,定时器的处理函数还是我们自己去写实现。 为什么 要用回调函数呢,这个问题我也想过,现在先说说回调函数的定义 和使用,过下在回答为什么 要使转载 2012-07-23 14:42:49 · 849 阅读 · 0 评论 -
一组路径操作的API
本节介绍了在Windows Shell路径处理功能。出口本文档中介绍的编程元素SHLWAPI.DLL和定义在Shlwapi.h和Shlwapi.lib的。在本节中主题描述PathAddBackslash添加一个反斜杠结束的字符串,创建正确的语法的路径。如果源路径已经有一个尾部的反斜杠,没有反斜杠将被添加。PathA翻译 2012-09-29 11:01:10 · 1092 阅读 · 0 评论 -
d3d多渲染窗口结构
使用d3d的交换链可以方便的实现多渲染窗口结构,类的层次结构如下图所示:D3DRes用来定义dx设备丢失的处理,所有需要关心设备丢失的资源都从此类继承,然后重写设备丢失回调函数和设备重置回调函数即可方便的处理设备丢失。RenderTarget用来定义基本的渲染目标,成员包括长宽及大小的定义,及渲染目标的虚接口定义(比如:缓冲区切换等)。Win32Window封装win32接转载 2012-10-22 21:23:13 · 687 阅读 · 0 评论