(1) 下周期末作品展示
(2)學期內容回顧
(3)問題Q&A
week1:
(1)webGL
(2)跑OpenGL專案
week2:
(1)glut專案
(2)6個多邊形圖
(3)茶壺
week3:
(1)移動.旋轉.縮放
(2)跑transformation.exe
glutSolidTeapot(半徑)
glutSolidSphere(半徑,切,切)
glutSolidCone(半徑,切,切)
week4: Rotate矩陣
week5: T-R-T特定軸
week6:
glm 3D模型
#include "glm.h"
GLM*pmodel=NULL
畫圖
if(pmodel==NULL)
讀入模型
glmReadOBJ
縮放glmUnitize()
glmDraw(pmodel);
!!小心!!舊的strdup()會不相容
week7:
小心CodeBlocks專案&setting complier
要設對glm.pp才行complier
working_dir設程""
lifreeglut.dll專案目錄
week8:打光 陣列
week10:
貼圖:open CV{Open CY設目錄
week11:
keyboard配playsound()變鍵盤鋼琴
mouse配playsound()變射擊遊戲
CMP3_MCI.h可攜MP3
2018電腦圖學 Computer Graphics 授課教師: 葉正聖 銘傳大學資訊傳播工程系 每週主題: 程式環境、點線面顏色、移動/旋轉/縮放與矩陣(Matrix)、階層性關節轉動(T-R-T)、做出機器人、打光、貼圖、glu/glut函式、鍵盤、滑鼠、計時器(timer)、讀入3D模型、粒子系統、聲音、特效、投影矩陣、攝影機與運鏡、機器人2.0、期末作品
2018年6月4日 星期一
2018年5月28日 星期一
week14 fish
2018年5月21日 星期一
week13 fish
(1)主題:寫檔.讀檔
(2)主題:控制關節
(3)主題:動作內插
(3)File-New-Empty(Ctrl-shift-N)
另存新檔(File-SaveAs)
(2)
#include<stdio.h>
int main()
{
FILE*fout = fopen("output.txt","w+");
///FILE * 檔案指標fout
/// 檔案file
/// open開啟
/// "要開啟的檔名,"w+"表示要寫的/+檔案
///printf("Hello World"); 大一上程式設計第一周
///fprintf(fout,"Hello World");///大一下交過.大二下正式用
fprintf(fout,"%.3f %.3f %.3f\n",angle,angle2,angle3);
}



茶壺

可以轉向
(3)
int main()中的
glutCreateWindow("GLUT Shapes");
下面加上兩行
glutMouseFunc(mouse);
glutMotionFunc(motion);
來控制茶壺


(2)主題:控制關節
(3)主題:動作內插
(3)File-New-Empty(Ctrl-shift-N)
另存新檔(File-SaveAs)
(2)
#include<stdio.h>
int main()
{
FILE*fout = fopen("output.txt","w+");
///FILE * 檔案指標fout
/// 檔案file
/// open開啟
/// "要開啟的檔名,"w+"表示要寫的/+檔案
///printf("Hello World"); 大一上程式設計第一周
///fprintf(fout,"Hello World");///大一下交過.大二下正式用
fprintf(fout,"%.3f %.3f %.3f\n",angle,angle2,angle3);
}



茶壺

可以轉向
(3)
int main()中的
glutCreateWindow("GLUT Shapes");
下面加上兩行
glutMouseFunc(mouse);
glutMotionFunc(motion);
來控制茶壺


2018年5月14日 星期一
week12 fish
2018年5月7日 星期一
week11 fish
(1)主題:聲音/音效
(2)實作:PlaySound(),CMP3_MCI.h;
(3)鍵盤鋼琴.射擊遊戲
開啟GLUT

到wav下載音效(wav download)
把聲音檔移入freeglut裡面bin的地方然後改檔名
加入自己的聲音檔 PlaySound("a.wav",NULL,SND_ASYNC);
就可以跑出聲音

不確定有沒有聲音可以看音效的地方

Hello world

執行

將聲音檔一系hello_music檔案
TODO:File New Project貝殼專案
ASYNC會等 不會直接跑
SYNC不等 直接跑
#include <stdio.h>
#include <windows.h>
#include <mmsystem.h>


使用GLUT
將因檔拉入bin

一樣要加#include <mmsystem.h>
case '1': PlaySound("Do.wav", NULL, SND_ASYNC);
break;
case '2': PlaySound("Re.wav", NULL, SND_ASYNC);
break;
case '3': PlaySound("Mi.wav", NULL, SND_ASYNC);
break;
case '4': PlaySound("Fa.wav", NULL, SND_ASYNC);
break;
case '5': PlaySound("Sol.wav", NULL, SND_ASYNC);
break;
case '6': PlaySound("La.wav", NULL, SND_ASYNC);
break;
case '7': PlaySound("Si.wav", NULL, SND_ASYNC);
break;

(3)鍵盤鋼琴.射擊遊戲
開啟GLUT

到wav下載音效(wav download)
把聲音檔移入freeglut裡面bin的地方然後改檔名
加入自己的聲音檔 PlaySound("a.wav",NULL,SND_ASYNC);
就可以跑出聲音

不確定有沒有聲音可以看音效的地方

Hello world

執行

將聲音檔一系hello_music檔案
TODO:File New Project貝殼專案
ASYNC會等 不會直接跑
SYNC不等 直接跑
#include <stdio.h>
#include <windows.h>
#include <mmsystem.h>


使用GLUT
將因檔拉入bin

一樣要加#include <mmsystem.h>
case '1': PlaySound("Do.wav", NULL, SND_ASYNC);
break;
case '2': PlaySound("Re.wav", NULL, SND_ASYNC);
break;
case '3': PlaySound("Mi.wav", NULL, SND_ASYNC);
break;
case '4': PlaySound("Fa.wav", NULL, SND_ASYNC);
break;
case '5': PlaySound("Sol.wav", NULL, SND_ASYNC);
break;
case '6': PlaySound("La.wav", NULL, SND_ASYNC);
break;
case '7': PlaySound("Si.wav", NULL, SND_ASYNC);
break;

2018年4月30日 星期一
week10 fish
進入無痕視窗
1.data
2.win32
3.glut32.dll

TODO:Moodle下載myEarth.zip解壓縮
(此檔有問題)
(1)缺freeglut.dll
(2)缺image.jpg
改變形狀顏色之類的



下載一個地圖
複製freeglut.dll進yEarth資料夾
上網找地圖改名imdge.jpg


(1)貼圖(2)實作:OpenCV讀圖秀圖(3)實作:OpenGL貼圖(4)期中考試(5)回家作業HW3截止
下載: http://www.cmlab.csie.ntu.edu.tw/~jsyeh/3dcg10/1.data
2.win32
3.glut32.dll

TODO:Moodle下載myEarth.zip解壓縮
(此檔有問題)
(1)缺freeglut.dll
(2)缺image.jpg
改變形狀顏色之類的



下載一個地圖
複製freeglut.dll進yEarth資料夾
上網找地圖改名imdge.jpg


2018年4月16日 星期一
week08 fish
(1)主題:打光
(2)其中模擬考
(3)T-R-T小考
(4)回家作業:3D model會動(最少一個關節)
(5)Recap
Top1:
進入 http://www.cmlab.csie.ntu.edu.tw/~jsyeh/3dcg10/
下載 data.win32.glut32.dll
1.打光的範例light materul.exe
2.codeblock.Fil-New-Project, GLUT
3.把上週3D Model.放進去
將source.glut32移入windows

變色

變足球

變顏色











(1)打光的範例 Light Materual.exe
(2)CodeBlock.File-New-Project, GLUT
(3)把3D model放進去
畫模型



(2)其中模擬考
(3)T-R-T小考
(4)回家作業:3D model會動(最少一個關節)
(5)Recap
Top1:
進入 http://www.cmlab.csie.ntu.edu.tw/~jsyeh/3dcg10/
下載 data.win32.glut32.dll
1.打光的範例light materul.exe
2.codeblock.Fil-New-Project, GLUT
3.把上週3D Model.放進去
將source.glut32移入windows

變色

變足球

變顏色











(1)打光的範例 Light Materual.exe
(2)CodeBlock.File-New-Project, GLUT
(3)把3D model放進去
畫模型



2018年4月9日 星期一
week07 fish
week07:
(1)主題:3D模型
(2)轉檔,OBJ格式(v,vt,vnf)
(3)期中考題(10行OpenGL Code)
(4)小考T-R-T
(5)回家作業:骨架階層矩陣
1.
(1)安裝、執行
TODO:下載jsyeh.org/3dcg10>>data.zip
(2)data.zip→桌面 / data / 3D模型
用 3D Exploration 開 3D模

下載jsyeh.org/3dcg10>>Source.zip
(1)glm.h
(2)glm.c重新命名glm.cpp
(3)transformation.c重新命名transfarmation,cpp
上述3個程式放入桌面week07_glm資料夾
freeglut>>bin放入data/模型
ib的改libfreeglut.a複製貼上檔名改libglut32.a
2.

3.

打造 3D模型 程式
(1)把上節課transfarmation.cpp內容刪除
(2)main.cpp放程式
#include "glm.h"///1.外掛
GLMmodel * pmodel=NULL;//2.指標
void display()
(1)主題:3D模型
(2)轉檔,OBJ格式(v,vt,vnf)
(3)期中考題(10行OpenGL Code)
(4)小考T-R-T
(5)回家作業:骨架階層矩陣
1.
(1)安裝、執行
TODO:下載jsyeh.org/3dcg10>>data.zip
(2)data.zip→桌面 / data / 3D模型
用 3D Exploration 開 3D模

下載jsyeh.org/3dcg10>>Source.zip
(1)glm.h
(2)glm.c重新命名glm.cpp
(3)transformation.c重新命名transfarmation,cpp
上述3個程式放入桌面week07_glm資料夾
freeglut>>bin放入data/模型
ib的改libfreeglut.a複製貼上檔名改libglut32.a
2.

3.

打造 3D模型 程式
(1)把上節課transfarmation.cpp內容刪除
(2)main.cpp放程式
#include "glm.h"///1.外掛
GLMmodel * pmodel=NULL;//2.指標
void display()
訂閱:
文章 (Atom)








