期末作品:
https://www.youtube.com/watch?v=bbj83lbjk_Q
2017電腦圖學 Computer Graphics 授課教師: 葉正聖 銘傳大學資訊傳播工程系 每週主題: 程式環境、點線面顏色、移動/旋轉/縮放與矩陣(Matrix)、階層性關節轉動(T-R-T)、做出機器人、打光、貼圖、glu/glut函式、鍵盤、滑鼠、計時器(timer)、讀入3D模型、粒子系統、聲音、特效、投影矩陣、攝影機與運鏡、機器人2.0、期末作品
2017年6月30日 星期五
2017年5月15日 星期一
Week10 HMTse 的上課筆記
2017年5月8日 星期一
2017年5月1日 星期一
Week 08 HMTse的上課筆記
用codeblocks 開檔
把這兩行註解掉
/// (LPLOGPALETTE) lpPalette = (LPLOGPALETTE)HeapAlloc (hHeap, 0,
/// sizeof (LOGPALETTE) + (nColors * sizeof (PALETTEENTRY)));
/// (LPLOGPALETTE) lpPalette = (LPLOGPALETTE)HeapAlloc (hHeap, 0,
/// sizeof (LOGPALETTE) + (nColors * sizeof (PALETTEENTRY)));
2017年4月24日 星期一
Week 07 HMTse的上課筆記
1. NeHe Lesson32
遊戲畫面
2.聲音
1. #include <mmsystem.h>
2. void mouse(int button,int state,int x,int y)
{
PlaySound("C:\\Users\\user\\Desktop\\Lesson32\\data/shot.wav",NULL,SND_ASYNC);
}
3. glutMouseFunc(mouse);
keyboard
1. void keyboard(unsigned char key,int x,int y)
{
if(key=='1') PlaySound("do.wav",NULL,SND_ASYNC);
if(key=='2')PlaySound("re.wav",NULL,SND_ASYNC);
if(key=='3')PlaySound("mi.wav",NULL,SND_ASYNC);
if(key=='4')PlaySound("fa.wav",NULL,SND_ASYNC);
if(key=='5')PlaySound("so.wav",NULL,SND_ASYNC);
}
2. glutKeyboardFunc(keyboard);
播歌
#include "CMP3_MCI.h" 放在專案檔目錄中
CMP3_MCI meMP3; 宣告
meMP3.Load("C:\\Users\\user\\Desktop\\freeglut\\yukai.mp3");
meMP3.Play();
2017年4月10日 星期一
Week06 HMTse的上課筆記
練習打光
static void display(void)
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glPushMatrix();
glutSolidTeapot(0.3);
glPopMatrix();
glutSwapBuffers();
}
多增加一組 glPushMatrix();
glPopMatrix();
即可畫出另一個茶壺
幾何多邊形
glutSolidTeapot(大小); ///茶壺
glutSolidCube(大小); ///方塊
glutSolidCone(底 r , 高 h , slice , stack); ///圓錐 (slice柳丁切 stack堆疊)
glutSolidSphere(r , slice,stack); ///圓球
glutDedocahedron(); ///十二面體
glutIcosahedron(); ///二十面體
2017年3月27日 星期一
Week05 HMTse的上課筆記
期中考題:
主題: 旋轉、移動、縮放、Push Matrix、Pop Matrix
作業1:開啟 Transfomation
將windows.zip解壓縮到桌面 →data.zip解壓縮到windows.zip資料夾
→glut32.dll複製到windows.zip資料夾 →將Transformation點兩下
→利用Rotate更改angle,X,Y,Z質的改變 →觀察車子的轉動方向
///glRotatef(angle,x,y,z);
glRotatef(a,x,y,z);
第一個值是轉的角度
x是X軸角度,
第一個值是轉的角度
x是X軸角度,
y是Y軸角度,
z是Z軸角度
旋轉方式:安培右手
主要在於motion函式內還要額外調整位移方向,這是小葉老師上課畫的座標軸

改變位置
glTranslatef(0.5,0,0);
2017年3月13日 星期一
2017年3月6日 星期一
Week02 HMTse的上課筆記
複習 第一個 openGL
第二個
作業 自已打的 茶壺程式
1:開啟上週的GLUT檔案
2:接著保留重點的9行程式碼
3:在display函式 加上glutSolidTeapot(0.3); //用來顯示茶壺的圖案
4:建置與執行
變顏色的茶壺
#include <GL/glut.h>///使用高級的GLUT使用者工具
static void display(void)///用來顯示
{
glColor3f(0,0,1);///藍色
glutSolidTeapot(0.3);///畫茶壺
glutSwapBuffers();///最後要顯示,有始有終
}
int main(int argc, char *argv[])///主函式
{
glutInit(&argc, argv);///GLUT要準備好/初始化
glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);
///開始要顯示的模式
glutCreateWindow("GLUT Shapes");
glutDisplayFunc(display);///要有顯示的函式
glutMainLoop();
}
畫 三角形
作品
訂閱:
文章 (Atom)



















































