91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

資源簡介

這是我早些時候編的小游戲,使用了OPENGL來畫圖,源代碼里面還有拼音做函數名的,不好意思。但可以拿來大概學習下OPENGL在單文檔視圖的MFC中的使用。

資源截圖

代碼片段和文件信息

//?GLFont.cpp:?implementation?of?the?CGLFont?class.
//
//////////////////////////////////////////////////////////////////////
#include?“stdafx.h“

#include?“GLFont.h“

#ifdef?_DEBUG
#undef?THIS_FILE
static?char?THIS_FILE[]=__FILE__;
#define?new?DEBUG_NEW
#endif

//////////////////////////////////////////////////////////////////////
//unsigned?int?base;
//////////////////////////////////////////////////////////////////////

CGLFont::CGLFont()
{
}
CGLFont::~CGLFont()
{
}
void?CGLFont::entext(?float?xfloat?y?LPCTSTR?str?HFONT?hFont
??float?r?float?g?float?b)?//平面字符顯示,不支持漢字。
{? HDC?hdc?=?wglGetCurrentDC();????????//獲取設置場景
Selectobject(hdc?hFont);???????????//設置字體
unsigned?int?base?=?glGenLists(96);?//創建大小為96顯示列表存放字符位圖
wglUseFontBitmaps(hdc?32?96base);//創建位圖字體
glDisable(GL_TEXTURE_2D);???????????//不使用貼圖
glDisable(GL_LIGHTING);?????????????//不使用光照
glPushAttrib(GL_LIST_BIT);??????????//保存顯示列表位屬性
glColor3f(rgb);???????????????????//顏色
glRasterPos2f(x/100?y/100);????????//平面定位
glListbase(base?-?32);??????????//從顯示列表開始
glCallLists(strlen(str)?GL_UNSIGNED_BYTE?str);?//繪制顯示列表
glPopAttrib();??????????????????????//恢復顯示列表屬性
glEnable(GL_LIGHTING);??????????????//使用貼圖
glEnable(GL_TEXTURE_2D);????????????//使用光照
glDeleteLists(base?96);????????????//刪除顯示列表
}

//////////////////////////////////////////////////////////////////
void?CGLFont::c3dtext(LPCTSTR?strHFONT?hFontfloat?z)//?3D文字顯示支持漢字。
{ glDisable(GL_TEXTURE_2D);?????//?關閉貼圖
glDisable(GL_LIGHTING);???????//?關閉光照
Printfc3d(“立體漢字“hFontz);//?調用3D文字顯示
glEnable(GL_LIGHTING);????????//?使用光照
glEnable(GL_TEXTURE_2D);??????//?使用貼圖
}
void?CGLFont::Printfc3d(CString?strTextHFONT?hFontfloat?z)
{ HDC?hdc?=?wglGetCurrentDC();?//設備場景
HFONT?hOldFont=(HFONT)::Selectobject(hdchFont);//將字體選入場景
UCHAR?*?pChar=(UCHAR*)strText.GetBuffer(strText.GetLength());//定義字符串長度
int???nListNum;?????????????????????????????????//顯示列表
DWORD?dwChar;???????????????????????????????????//字符指針
GLYPHMETRICSFLOAT?pgmf[1];??????????????????????//輪廓字體字符集的信息
glPushMatrix();?????????????????????????????????//壓入堆棧
for(int?i?=?0;?i? {?if(IsDBCSLeadByte((BYTE)pChar[i]))????????????//是否雙字節(漢字)
{?dwChar=(DWORD)((pChar[i]<<8)|pChar[i+1]);?//取當前字符,雙字節轉換
??i++;
}
??else dwChar?=?pChar[i];??????????????????????//取當前字符
??nListNum?=?glGenLists(1);?????????????????????//創建列表
??wglUseFontOutlines(?hdc //擁有字體的HDC
??dwChar //轉化為顯示列表的第一個字符
??1 //轉化為顯示列表的字符數
??nListNum //顯示列表的開始
??0.0f?
??z //Z軸負方向的厚度
??WGL_FONT_POLYGONS //繪制字體方式
??pgmf //指向存放信息的數組為count個
);
??glCallList(nListNum);?????????????????????????//繪制顯示列表
??glDeleteLists(nListNum?1);???????????????????//刪除列表
}
glPopMatrix();??????????????????????????????????//彈出堆棧
strText.ReleaseBuffer();????????????????????????//清除字符串
::Selectobject(hdchOldFont);??????

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件????1572918??2008-08-17?09:32??老何開發(炸飛機)\1014-1.jpg

?????文件?????393270??2008-08-17?09:32??老何開發(炸飛機)\1014-2.jpg

?????文件????1572918??2008-08-20?09:44??老何開發(炸飛機)\1028-1.jpg

?????文件????1572918??2008-08-20?11:43??老何開發(炸飛機)\1076-1.jpg

?????文件?????196662??2008-08-17?18:28??老何開發(炸飛機)\1425-1.jpg

?????文件?????196662??2008-08-20?09:44??老何開發(炸飛機)\1448-1.jpg

?????文件?????196662??2008-08-20?11:43??老何開發(炸飛機)\1485-1.jpg

?????文件??????19690??2009-11-24?21:53??老何開發(炸飛機)\3DS.CPP

?????文件???????3851??2005-04-17?18:15??老何開發(炸飛機)\3DS.H

?????文件??????71471??2010-05-19?14:37??老何開發(炸飛機)\Debug\3DS.obj

?????文件??????????0??2010-05-19?14:37??老何開發(炸飛機)\Debug\3DS.sbr

?????文件??????19567??2010-05-19?14:37??老何開發(炸飛機)\Debug\GLFont.obj

?????文件??????????0??2010-05-19?14:37??老何開發(炸飛機)\Debug\GLFont.sbr

?????文件??????19338??2010-05-19?14:37??老何開發(炸飛機)\Debug\MainFrm.obj

?????文件??????????0??2010-05-19?14:37??老何開發(炸飛機)\Debug\MainFrm.sbr

?????文件??????47024??2010-05-19?14:37??老何開發(炸飛機)\Debug\mscomm.obj

?????文件??????????0??2010-05-19?14:37??老何開發(炸飛機)\Debug\mscomm.sbr

?????文件????4023296??2010-10-09?19:45??老何開發(炸飛機)\Debug\SDOpenGL.bsc

?????文件????2330691??2010-10-09?19:45??老何開發(炸飛機)\Debug\SDOpenGL.exe

?????文件????2848048??2010-10-09?19:45??老何開發(炸飛機)\Debug\SDOpenGL.ilk

?????文件??????26148??2010-05-19?14:37??老何開發(炸飛機)\Debug\SDOpenGL.obj

?????文件????7100476??2010-05-19?14:37??老何開發(炸飛機)\Debug\SDOpenGL.pch

?????文件????4514816??2010-10-09?19:45??老何開發(炸飛機)\Debug\SDOpenGL.pdb

?????文件??????16104??2010-10-09?19:45??老何開發(炸飛機)\Debug\SDOpenGL.res

?????文件??????????0??2010-05-19?14:37??老何開發(炸飛機)\Debug\SDOpenGL.sbr

?????文件??????13671??2010-05-19?14:37??老何開發(炸飛機)\Debug\SDOpenGLDoc.obj

?????文件??????????0??2010-05-19?14:37??老何開發(炸飛機)\Debug\SDOpenGLDoc.sbr

?????文件??????64948??2010-10-09?19:45??老何開發(炸飛機)\Debug\SDOpenGLView.obj

?????文件??????????0??2010-10-09?19:45??老何開發(炸飛機)\Debug\SDOpenGLView.sbr

?????文件?????107254??2010-05-19?14:37??老何開發(炸飛機)\Debug\StdAfx.obj

............此處省略50個文件信息

評論

共有 條評論