自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(28)
  • 资源 (7)
  • 收藏
  • 关注

原创 OpenGL学习11-使用光源

环境光具有自己的用途。但是,对于绝大多数视图对现实世界进行建模的应用程序而言,必须指定一个或多个特定的光源。除了强度颜色和颜色之外,这些光源具有位置和方向。这些光源可以极大的影响场景的外光。        OpenGL至少支持8中独立的光源,他们可以出现在场景的任何地方或者视景体之外。可以把一个光源看成位于位于无限远处,并把它的光线看成是平行的。或则,我们也可以把光源放在附近,让他的光线向四周

2014-12-30 14:55:11 592

原创 OpenGL学习10-OpenGL光照

在OpenGL模型中,除非一个物体自己会发光,否则它将受到3中不同的光照射:环境光(ambient)、散射光(diffuse)和镜面光(specular)。现实世界中,当然不存在这样的光,但是,作为光抽象,这三种类型的光允许我们模拟和控制光照在物体表面上所产生的主要类型的效果。1、环境光        环境光并不是来自任何特定的方向。它来自某个光源,但光线确实在房间或场景中四处反射,没有方

2014-12-17 17:36:25 547

原创 OpenGL学习08-透视投影&照相机

透视投影执行透视除法,对观察者较远的物体进行缩短和收缩。投影到屏幕之后,可视区域后端和前端的宽度度量方式并不相同。因此,如果两个逻辑大小相同的物体分别位于可是区域前面和后面,前者看上去要比后者大一些。        如图1所示,该图形被称为平截头体(frustum),它的观察方向是从狭窄端到宽阔端,另外还显示了观察则的位置。 图1,来至OpenGL超级宝典

2014-12-15 16:47:46 636

原创 OpenGL学习07-OpenGL矩阵

关于矩阵的概念和矩阵的计算本篇就不再多说了,不了解的同学可以翻一下大学数学了!         矩阵(Matrix)是一种很强大的数学工具,特别实在计算机图形处理中,它可以极大的简化变量之间的复杂关系的一个或多个方程式的求解。例如:空间中有一个点坐标x、y、z,如果当这个点围绕任意点以任意方向旋转一定的坐标之后,想知道它的新位置,就需要使用矩阵。 (1)变换管线         从

2014-12-12 18:25:30 492

原创 OpenGL学习07-OpenGL矩阵

关于矩阵的概念和矩阵的计算本篇就不再多说了,不了解的同学可以翻一下大学数学了!矩阵(Matrix)是一种很强大的数学工具,特别实在计算机图形处理中,它可以极大的简化变量之间的复杂关系的一个或多个方程式的求解。例如:空间中有一个点坐标x、y、z,如果当这个点围绕任意点以任意方向旋转一定的坐标之后,想知道它的新位置,就需要使用矩阵。 (1)变换管线从原始顶点数据通往屏幕坐标的路是相当漫

2014-12-12 18:18:42 159

原创 OpenGL学习06-OpenGL变换

绝大多数3D图形并不是真正的3D的。我们使用3D的概念和术语描述看上去像3D的东西,然后把这种3D图形“压平”到2D计算机屏幕上,把3D图形压平为3D图形的过程叫做投影。投影分为正投影和透视投影,不同的投影类型投影过程中使用的变换不同。OpenGL变换术语:        视图 Viewing 指定观察者或相机的位置        模型 Modeling 在场景中移动物体     

2014-12-12 15:14:46 337

原创 OpenGL学习05-绘制实心物体

使用三角形或者多边形结合在一起,我们可以绘制实心物体(3D物体)。本篇中使用三角形绘制圆锥形。下面测试第一个OpenGL程序:void renderScene(void) { float angle;float x, y;static int triangleNum = 1;//清除颜色缓冲区和深度缓冲区glClear(GL_COLOR_BUFFER_BIT | GL_D

2014-12-11 15:36:25 839

原创 OpenGL学习04-直线&三角形绘制

一、画线(1)在glBegin中使用GL_LINES绘制图元时,每两个顶点会连成一条直线,例如:glBegin(GL_LINES);glVertex3f(20.0f, 0.0f, 0.0f);glVertex3f(50.0f, 50.0f, 0.0f);glVertex3f(-50.0f, 50.0f, 0.0f);glVertex3f(-20.0f, 00.0f, 0.0f);

2014-12-09 20:16:51 552

原创 OpenGL学习04-直线&三角形绘制

一、画线(1)在glBegin中使用GL_LINES绘制图元时,每两个顶点会连成一条直线,例如:glBegin(GL_LINES);glVertex3f(20.0f, 0.0f, 0.0f);glVertex3f(50.0f, 50.0f, 0.0f);glVertex3f(-50.0f, 50.0f, 0.0f);glVertex3

2014-12-09 20:04:28 498

原创 OpenGL学习03-画点&按键处理

本篇中我们主要介绍画点的方法,在下面的例子中是通过一些列的点形成一个点环,点击键盘上的方向键,市点环沿着X、Y轴方向旋转。 程序如下所示:#include #include void renderScene(void) { GLfloat x, y, z, angle;glClear(GL_COLOR_BUFFER_BIT); //使用当前清除颜色清除窗口,GL_CO

2014-12-09 14:49:19 381

原创 OpenGL学习03-画点&按键处理

本篇中我们主要介绍画点的方法,在下面的例子中是通过一些列的点形成一个点环,点击键盘上的方向键,市点环沿着X、Y轴方向旋转。 程序如下所示:#include #include void renderScene(void)  {  GLfloat x, y, z, angle;glClear(GL_COLOR_BUFFER_BIT);   //使用当前清除颜色清除窗口,

2014-12-09 14:45:07 102

原创 OpenGL学习02-绘制图形&改变窗口大小

本篇中我们在窗口中绘制一个图形,并且希望该窗口是可以改变大小的,并且渲染程序能够对窗口大小改变做出正确的响应。 程序如下所示:#include void renderScene(void) { glClear(GL_COLOR_BUFFER_BIT); //使用当前清除颜色清除窗口,GL_COLOR_BUFFER_BIT说明清除的是颜色缓存区glColor3f(1.0f,

2014-12-08 17:01:38 1188

原创 OpenGL学习01-OpenGL学习环境搭建

平台: Windows 7开发环境: Visual Studio 2012工具软件: glutdlls37beta.zipGlut全称为 OpenGL Utility Toolkit,是OpenGL的实用工具,主要是用来管理窗口事件的。Glut下载地址: https://www.opengl.org/resources/libraries/glut/glutdlls37beta

2014-12-05 11:26:47 426

原创 Cocos2dx引擎10-事件派发

本文介绍Cocos2dx事件(下面简称Event)处理机制中的事件分发模块,在Event发生后,进过一系列处理,最后将会分发Event; 1、dispatchEvent& dispatchTouchEvent方法voidEventDispatcher::dispatchEvent(Event* event){ if (!_isEnabled) return; upd

2014-10-11 18:10:59 842

原创 Cocos2dx引擎9-注册事件监听器

1、事件处理方法下面为普通的点击事件监听器(下面简称EventListener)注册部分;注册EventListener需要实现onTouchBegan方法,可以实现onTouchEnded、onTouchCancelled方法,当然如果你想监听触控(鼠标)移动(拖动)监听器需要实现onTouchMoved方法,这里使用Lambda方式简单实现了onTouchBegin方法;auto ev

2014-10-11 15:47:40 965

原创 Cocos2dx引擎8-事件处理

本文从主要介绍点击事件的处理过程,分别从win32、Android、IOS系统介绍Cocos2dx点击事件处理过程。 1、Win32系统 AppDelegate::applicationDidFinishLaunching()->GLView::create(…)->GLView::initWithRect(…)bool GLView::initWithRect(conststd::

2014-10-11 15:44:58 1179

原创 Cocos2dx引擎7-内存管理机制

在C++中,可以再栈上分配内存也可以在堆上分配内存;如果对象在栈上分配内存,那么内存释放就不管我们的事了;如果在堆上分配内存,那么我们还需要负责将分配的内存在不需要的时候释放;C++的动态内存管理建议遵守谁申请谁释放的原则,即谁使用new,那么谁就需要使用delete释放内存。在同一个生命周期内,这是很容易实现的;如果对象的生命周期超出了创建对象的函数,我们就很难再遵循谁申请谁释放的原则了,我

2014-10-11 15:39:13 352

原创 Cocos2dx引擎6-分辨率适配

在cocos2dx 2.0之后,Cocos2dx为不同分辨率手机提供了适配的方法,就是使用setDesignResolutionSize,一般情况下在AppDelegate.cpp文件中使用,如下:auto director = Director::getInstance();auto glview = director->getOpenGLView();if(!glview) {glv

2014-10-11 14:49:05 430

原创 Cocos2dx引擎5-坐标系统

l  OpenGL坐标系Cocos2dx以OpenGL&OpenGL ES为基础,支持OpenGL坐标系。该坐标系原点在屏幕左下角,x轴向右,y轴向上。 l  屏幕坐标系屏幕坐标系使用的是不同的坐标系统,原点在屏幕左上角,x轴向右,y轴向下。触摸屏事件传入的位置信息使用的是该坐标系,在cocos2dx中对触摸事件做出响应前,需要首先把触摸点转化到OpenGL坐标系。这一点在后面的触

2014-10-11 14:34:53 598 1

原创 Cocos2dx引擎4-Node系统

Node继承于Ref,Ref为内存管理类Node在cocos2dx中为抽象类,需要渲染的对象都是从Node继承来的,例如:Scene、Layer、LayerColor、Sprite等等。 成员函数:virtual bool init();static CCNode * create(void);创建和初始化接口,create函数会自动调用autorelease vi

2014-10-11 14:20:30 488

原创 Cocos2dx引擎3-运行流程-基于IOS

IOS应用入口文件main.mmint main(int argc, char *argv[]) {   NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];   int retVal = UIApplicationMain(argc, argv, nil,@"AppController");   [pool re

2014-10-11 14:13:28 509

原创 Cocos2dx引擎2-运行流程-基于Android

AndroidCocosdx程序首先由AppActivity.java文件开始执行public class AppActivity extendsCocos2dxActivity {}类AppActivity继承与Cocos2dxActivity,而AppActivity实现为空,故首先执行父类方法; 在cocos2d\cocos\platform\android\java\

2014-10-11 14:06:13 699

原创 Cocos2dx引擎1-运行流程-基于Win32

Win32Cocosdx程序首先由mian.c文件开始执行 AppDelegate app;会执行AppDelegate类的构造函数,而AppDelegate集成于Application类,即首先AppDelegate类的构造函数Application::Application(){   …..   sm_pSharedApplication = this;}

2014-10-11 13:58:32 518 1

原创 电容式触摸屏Linux驱动(1)----驱动整体框架

公司开发平板电脑平板电脑,更换触摸屏----七寸电容式触摸屏。我在博客中与大家分享一下写触摸屏驱动的过程,希望对大家有用开发环境中I2C总线驱动可用,可以使用总线驱动发送数据下面是次驱动的框架,就像人体的骨骼一样,支撑整个驱动(1)首先在mach-xxxxx/smdk-xxxx.

2011-07-19 10:33:47 1965

原创 FramBuffer参数确定

FramBuffer参数的确定作者:小辛1.、LCD工作的硬件需求:    要使一块LCD正常的显示文字或图像,不仅需要LCD 驱动器,而且还需要相应的LCD控制器。在通常情况下,生产厂商把LCD驱动器会以COF/COG的形式与 LCD玻璃基板制作在一起,而LCD控制器则是由外部的电路来实现,现在很多的MCU内部都集成了LCD控制器,如S3C2410/2440等。通过LCD控制器就

2011-06-14 10:52:00 312

原创 QT/Embedded-4.7.0 移植

      搞了好多天,在网上查了很多资料,今天终于搞定,将QT移植到TQ2440开发板上了。网上有很多的移植方式,但是移植到板子上后运行QT应用程序老是出现“段错误”的提示....郁闷到死....       我是用的编译器是EABI的,arm-linux-gcc版本是4.3.3的,不多说废话了,下载开始吧      编译器:arm-none-linux-gnueabi-2009q1

2011-06-08 17:38:00 447

原创 QT 编译和常遇到的错误

编译busybox出错2010-01-0815:04$make meuncnfig>miscutils/ionice.c: In function 'ioprio_set':>miscutils/ionice.c:16: error: 'SYS_ioprio_set' undec

2011-03-28 17:18:00 352

原创 Ubuntu 初始用

Ubuntu新手使用方法1、安装显卡驱动程序 系统->系统管理->附加驱动 将显卡激活,就会从网上自动下载安装显卡驱动。2、访问过的磁盘不在桌面显示 1.打开配置编辑器,在终端中输入:gconf-editor2.打开后,在窗口左侧依次点开: apps->nautilus->des

2011-03-28 17:13:00 221

FramBuffer参数的确定

详细介绍了在linux内核移植过程中FramBuffer参数的确定,为新手指明方向.

2011-06-14

s3c2410 framebuffer移植

介绍了linux在s3c2410中framebuffer移植过程

2011-02-22

程序员面试宝典(全)

介绍程序员面试的经验,书本中有很多企业的面试题目,是面试前必看的书籍

2011-02-22

写一个linux块设备驱动

IBM公司一个牛人:赵磊写的一个学习linux块设备的文档,该文档分为15章,逐步教我们自己写linux块设备驱动

2011-02-22

《C程序设计》习题答案

谭浩强的C程序设计是一本经典的C语言入门书籍,本资源是《C程序设计》的课后习题答案

2010-12-21

linux内核完全注释(第三版)

详细讲述了linux 0.11 内核的工作过程,是刚接触linux内核人的必看书籍

2010-12-10

AT24C04AN数据手册

AT24C04AN 数据手册,学习S3C2440中I2c所需要的芯片手册。绝对正确

2010-10-26

空空如也

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

TA关注的人

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