ĐỀ TÀI VẼ HÌNH CON RỒNG

13 483 0
ĐỀ TÀI VẼ HÌNH CON RỒNG

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

BỘ CÔNG THƯƠNG TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI KHOA CÔNG NGHỆ THÔNG TIN  BÁO CÁO BÀI TẬP LỚN MÔN ĐỒ HỌA MÁY TÍNH ĐỀ TÀI: VẼ HÌNH CON RỒNG Giảng viên hướng dẫn: ThS. Nguyễn Thị Cẩm Ngoan Nhóm thực hiện: NHÓM 5 Thành viên: Nguyễn Tuấn Anh - Mã sv: 0441360034 Nguyễn Trung Kiên - Mã sv: 0441260057 sv Hà Nội, tháng 6 năm 2011 Mục lục………………………………………………………………………… I . Khảo sát………………………………………………………………………3 II . Phân tích, thiết kế ………………………………………………………… 4 III . Giao diện và Source Code………………………………………………….4 IV . Kết luận……………………………………………………………………11 V . Tài liệu tham khảo…………………………………………………………11 I . Khảo sát 1 . Định nghĩa. Rồng là một loài vật xuất hiện trong thần thoại phương Đông và phương Tây. Trong cả phương Đông lẫn phương Tây, hình ảnh loài rồng đều được biểu thị cho loài linh vật huyền thoại có sức mạnh phi thường. Rồng ở các nước châu Á có nhiều khác biệt với rồng ở các nước châu Âu và châu Mỹ. Tại một số nước châu Á, rồng có mình rắn, vảy cá, bờm sư tử, sừng hươu và biết bay. Đa số các nước châu Á coi rồng là con vật linh thiêng trong khi các nước châu Âu lại coi rồng là biểu tượng của cái ác và sự hung dữ. 2 . Khảo sát. Đối với ngành công nghệ thông tin, đặc biệt là trong lĩnh vực lập trình đồ hoạ thì hình ảnh con rồng được sử dụng nhiều. Bạn có thể thấy hình rồng xuất hiện trong một số game như: Dragon Hunt ( game bắn rồng), Hiệp sĩ Rồng, Diablo , warcraft, Gunny, Heroes, … Một số hình ảnh đồ hoạ hình rồng: II . Phân tích, thiết kế 1 . Phần thân chương trình 1.1 Các hằng số 1.2 Hệ thống xử lý 2 . Phần đầu chương trình 2.1 Tạo chế độ đồ hoạ 2.2 Tạo 10 con rồng và gọi hàm III. Giao diện và code 1 . Giao diện 2. Source Code (mã nguồn) a. Phần thân #include <stdlib.h> #include "SGA.h" #include <GODragon.h> //**************************************************** //** Constants – Các hằng số //**************************************************** struct GCellFrame { int mNextRow; int mNextCol; }; ////////////////////////////////////////////////////// static const GCellFrame GActionList[2][6]= { { {0,1},{0,0},{0,0},{0,4},{0,5},{0,3} }, { {1,1},{1,2},{1,0},{1,4},{1,5},{1,3} } }; //**************************************************** //** Implementation – Hệ thống xử lý //**************************************************** void GODragon::ClearObject(void) { mSurface=NULL; mSound=NULL; mCellRow=0; mCellCol=0; mPosX=0; mPosY=0; mVelX=0; mVelY=0; } ////////////////////////////////////////////////////// void GODragon::OnMoveStart(void) { SGASoundPlay(mSound,SGAFALSE); } ////////////////////////////////////////////////////// void GODragon::OnMove(void) { // move to the next cell - Di chuyển đến các ngăn tiếp theo const GCellFrame *list=&(GActionList[mCellRow][mCellCol]); mCellRow=list->mNextRow; mCellCol=list->mNextCol; // Move to the next position – Di chuyển đến các vị trí tiếp theo mPosX=(mPosX + mVelX); mPosY=(mPosY + mVelY); if(mPosX<=0 || mPosX>=640) { SetVelocity(-mVelX,mVelY); } if(mPosY<=0 || mPosY>=480) { SetVelocity(mVelX,-mVelY); } if(rand()%30==0) { SGASoundPlay(mSound,SGAFALSE); } if(SGAKeyboard(SGA_KEY_SPACE)==SGATRUE) { SetVelocity(-mVelX,mVelY); } } /////////////////////////////////////////////////////// void GODragon::OnDraw(void) { // Draw the mSurface – Vẽ bề mặt SGASurfaceBlit(mSurface,mPosX,mPosY,mCellRow,mCellCol); } ////////////////////////////////////////////////////// GODragon::GODragon(void) { ClearObject(); } ////////////////////////////////////////////////////// GODragon::~GODragon(void) { Destroy(); } ////////////////////////////////////////////////////// bool GODragon::Create(int x,int y,int vx,int vy,int height) { Destroy(); // Load the surface – Tải bề mặt mSurface=SGASurfaceLoad("GODragon.bmp",6*height,2*height,2,6); if(mSurface==NULL) { // Unable to load surface Destroy(); return false; } // Load the sound – Tải âm thanh mSound=SGASoundLoad("GODragon.wav"); if(mSound==NULL) { //Unable to load the sound - Khong the tai am thanh Destroy(); return false; } // Set the surface key - Thiet lap khoa be mat SGASurfaceColorKey(mSurface,0xFFFFFF,0xFFFFFF); // Set state of object - Thiet lap trang thai cua doi tuong mPosX=x; mPosY=y; mVelX=vx; mVelY=vy; // Set Direction of object - Thiet lap huong doi tuong if(mVelX>0) { mCellRow=1; mCellCol=3; } else if(mVelX<0) { mCellRow=1; mCellCol=0; } else if(mVelY==0) { mCellRow=0; mCellCol=0; } else { mCellRow=0; mCellCol=3; } return true; } ////////////////////////////////////////////////////// bool GODragon::Destroy(void) { if(mSurface!=NULL) { SGASurfaceUnload(mSurface); mSurface=NULL; } if(mSound!=NULL) { SGASoundUnload(mSound); mSound=NULL; } ClearObject(); return true; } //////////////////////////////////////////////////// bool GODragon::SetPosition(int x,int y) { mPosX=x; mPosY=y; return true; } //////////////////////////////////////////////////// bool GODragon::SetVelocity(int vx,int vy) { mVelX=vx; mVelY=vy; if(mVelX>0) { mCellRow=1; mCellCol=3; } else if(mVelX<0) { mCellRow=1; mCellCol=0; } else if(mVelY==0) { mCellRow=0; mCellCol=0; } else { mCellRow=0; mCellCol=3; } [...]... Kết luận Với những hình ảnh và chuyển động đã đạt được thì theo ý kiến của nhóm chương trình đã đạt được yêu cầu của đề tài Nhưng trong quá trình vẽ rồng, nhóm đã có rất cố gắng nhưng còn nhiều thiếu sót mong các bạn cũng như cô góp ý thêm V Tài liệu tham khảo Giáo trình đồ hoạ và slide từ giảng viên: Ths: Nguyễn Thị Cẩm Ngoan Wikipedia – link : http://vi.wikipedia.org/wiki /Rồng Web: http://comsci.liu.edu... /////////////////////////////////////////////// int main(int argn,const char *argv[]) { if(SGACreate(argn,argv,1024,768,32)==SGAFALSE) { printf("Khong the khoi tao che do do hoa\n"); return 1; } // Create 10 Dragons going in random directions // Tạo 10 con rồng di chuyển theo các hướng bất kỳ int i; for(i=0;iCreate(rand()%400+100,rand()%200+100,rand()%10-5 ,rand()%10-5,rand()%50+50)==false) { SGADebug("Khong the khoi tao rong"); // Remove Object from engine – Lược bỏ đối tượng cơ cấu SGAObjectDestroy(dragon); . thì hình ảnh con rồng được sử dụng nhiều. Bạn có thể thấy hình rồng xuất hiện trong một số game như: Dragon Hunt ( game bắn rồng) , Hiệp sĩ Rồng, Diablo , warcraft, Gunny, Heroes, … Một số hình. NGHIỆP HÀ NỘI KHOA CÔNG NGHỆ THÔNG TIN  BÁO CÁO BÀI TẬP LỚN MÔN ĐỒ HỌA MÁY TÍNH ĐỀ TÀI: VẼ HÌNH CON RỒNG Giảng viên hướng dẫn: ThS. Nguyễn Thị Cẩm Ngoan Nhóm thực hiện: NHÓM 5 Thành viên: Nguyễn. loài rồng đều được biểu thị cho loài linh vật huyền thoại có sức mạnh phi thường. Rồng ở các nước châu Á có nhiều khác biệt với rồng ở các nước châu Âu và châu Mỹ. Tại một số nước châu Á, rồng

Ngày đăng: 06/11/2014, 01:03

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan