1. Trang chủ
  2. » Luận Văn - Báo Cáo

Luận văn Ứng dụng mô hình chuyển Động hình nhân 3d vào tương tác người máy và e learning

92 2 0
Tài liệu được quét OCR, nội dung có thể không chính xác
Tài liệu đã được kiểm tra trùng lặp

Đ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

Thông tin cơ bản

Tiêu đề Ứng dụng Mô hình Chuyển Động Hình Nhân 3D Vào Tương Tác Người Máy Và E-learning
Tác giả Đảo Minh Th
Người hướng dẫn TS. Bùi Thế Duy
Trường học Đại Học Quốc Gia Hà Nội
Chuyên ngành Công Nghệ Thông Tin
Thể loại Luận Văn Thạc Sĩ
Năm xuất bản 2005
Thành phố Hà Nội
Định dạng
Số trang 92
Dung lượng 2,1 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Với dễ tái "Ứng dụng mô bình chuyển dộng hình nhân 3D vào tương tác người máy và E-learning”, tôi mong muốn xây đựng nên một chương trình mô phỏng, việc biểu điển ngôn ngữ ký hiệu phục

Trang 1

ĐẠI HỌC QUỐC GIÁ HÀ NỘI TRUONG DAI HỌC CÔNG NGHỆ

ĐẢO MINH TH”

Ứng đụng mô hình chuyên động hình nhân 3D

vảo Lương tác người máy vả E-learning

LUẬN VĂN THẠC SĨ CÔN

Trang 2

ĐẠI HỌC QUỐC GIÁ HÀ NỘI TRUONG DAI HỌC CÔNG NGHỆ

ĐẢO MINH TH”

Ứng đụng mô hình chuyên động hình nhân 3D

vảo Lương tác người máy vả E-learning

LUAN VAN THAC SI CONG NGHE THONG TLN

Người hudng din khoa học: TS Bùi Thế Duy

HÀ NỘI - 205

Trang 3

Mớ đầu

Năm 1955, khi mở cửa lần đảu công viên Disney ở Califomia (Mỹ), sông ty Tiiney đã thiết kế một mô hiưửt công viên 3 chiều dùng cho chiến dịch quảng cáo và

điêu này đã đem lại một hiệu quả không ngờ Chiến địch quảng cáo đã thành công rực

rữ và kết quả là du khách đỗ đến Disney Tand ngay cảng nhiều (theo New York Times,

2001)

Năm 2000, trò chơi Final Fantasy đã gây nên một cơn sốt trong giới chơi game

ở Việt Nam và thể giới Những mô hình nhận vật 3 chiều được tran chuốt tới từng sợi tóc, nếp áo, làn da, sự chân thực trong mỗi chuyển động, mảu sắc đã hoàn toàn hút hỗn

các game thủ Ngoài sự hấp dẫn về ý tưởng của trẻ chơi, yêu tổ "đẹp và sống động”

trong các mô hình 3D của Einal Fantasy là một trong những nguyên nhân khiến trò

chơi này trở thành một trong những game hip din nhất [⁄141

Hai ví dụ trên da cho thay sự thu hút của các mô hình 3 chiên Các ứng dụng, máy tỉnh sứ dụng mỏ hình 3 chiều xuất hiện ngày cảng nhiều và tố rõ lợi thể: sinh

động, chân thục và hiệu quả X6u hướng nghiên cứu xây đụng các hệ thông tương tác

người tmáy lại rhiễn trường đại học và phòng thủ nghiệm bất đầu từ những thấp kỹ 96 Một số công trình nghiên cứu phục vụ cho hé thống tương tác người máy dã dược nêu trong phân phụ lục 1

Ở Việt Nam, công nghệ 3D chú yêu dược dùng trong quảng cdo và kiến trúc, việc đua 31) vào sâu hơn trong các lĩnh vực khác như giảo dục, y tế còn rất hiểm Cụ

thé trong luận vẫn này tôi muốn để dập đến việc nghiên cứu và ứng dụng các hình nhân

3D vào thực tế mà một trong những ứng dụng có thể kế dến là việc biểu điễn ngôn ngữ

ky hiệu phục vụ người khiếm thính

Hiện nay, những chương trình, đự án nhằm cải thiện và nâng cao chất lượng, Giáo dục hòa nhập trẻ khiểm thính và các dich vụ phục vụ cho người khiếm thính

người khiếm thính ở Việt Nam đang phát triển khá mạnh [47]

Trang 4

Với dễ tái "Ứng dụng mô bình chuyển dộng hình nhân 3D vào tương tác

người máy và E-learning”, tôi mong muốn xây đựng nên một chương trình mô phỏng,

việc biểu điển ngôn ngữ ký hiệu phục vụ cho người khiếm thính trong lĩnh vực giáo tiếp truyền thông, thêm vào đỏ hoàn toàn có thể sứ dựng chương trinh trong các img

dụng E-learning khác đành cho người binh thường Chương trình được xây đụng theo

rốt chữ cát được mô lã bởi một ký

phương pháp đánh vàn: một lừ gồm nhiều chữ cái,

tiệu đo tay thục hiện, như vậy mỗi từ sẽ là một tập hợp các ký hiệu thể hiện bằng tay Người khiếm thính sẽ đánh vàn theo ký hiệu để biết được từ gì được “tới” lên Ví dụ khi muốn nói “Xin chao”, người nói sẽ biểu điển 7 ký hiệu theo thứ tự tương ủng với

” “h” “a” “o”, Phuong pháp nảy tuy có nhược điểm là tốc độ

các chữ cái “x” “1” “w

chuyển đổi châm nhưng lại có ki thể là tham số đầu vào không nhiều, có thẻ tạo ra các

từ tay ý mà không cần dùng bộ từ điền

Kết cảu của luận văn gồm 4 chương;

Chương 1 : Giới thiệu vẻ LI-anim bao gồm: khái niệm, các thành phản cần có theo quy định của một hình nhân theo chuẩn LI-anim, phân cấp trong khung xương của một Tỉnh nhân và cách đặt tên cho từng khớp theo chuẩn, các điểm đặc biệt trên cơ thế

người và cách thức xây dựng mô hình 313

Chương 2 : Giới thiệu về một số ngôn ngữ lập trinh 3D hiện may

Chương 3 : Trinh bày vẻ ngôn ngữ lập trình dỗ họa 3D (VRML và Java3D) sử dụng,

để xây dựng chương trình

Chương 4 : Thực hiện bài toán Giới thiêu về ngôn ngữ dấu liệu và các chuẩn hiện thời Xây dựng chương trình EamiliarHand biểu diễn ngôn ngữ ký hiệu theo điều khiển

bang ngôn ngữ lập trình Java3D

Phần Kết luận đảnh giả các công việc đã làm vá lrưởng, phát triển tiếp theo

Trang 5

Chương 1 - H-ANIM

1.1 Khải niệm H-anim

Củng với sự tăng trưởng của lĩnh vực để họa 3D trong những thập kỷ vừa qua,

nhiều phần mềm làm nhiệm vụ thiết kế mà hình 3D và kiến tạo các hoạt động phỏng,

sinh hoe của các ruở hình đó đã và đang nổi lên hết sức đáng chú ý Một số hệ thông đã dược xảy dựng uhim mve dich tự hiểu chỉnh những cử dộng của mô hình người trong, thể giới ảo Vấn đề khá khăn nẫy sinh trong quá trình sử đụng nhiều gói phần mềm và

hệ thống dang này là việc trao đổi thông tin Thiếu một hé théng khung chuẩn trong

truyền thông thường bỏ buộc các nhả xây dựng animation và các studio hiệu chỉnh cứ

động phải phát triển những giải pháp riêng mang tính độc quyển nhằm làm mịn các bước chuyển tiếp giữa hệ thống va phân mềm mà họ đang dùng

I8O (nerrational Standerd Orgamization) dịnh rõ khải ruệm H-Annn, la một

inh dung mang tính khái quát về việc mô hình hóa các hình nhân 3D ISO cũng mồ tả

wt cach thức chuâi biểu diễn

ở hình nhân mày, theo đỏ, cho phép đừng một công,

cụ (có thể của nhà cung cấp A) dễ xây dựng nên mỗ hình hình nhân 3 chiều, sau đó lại ding céng cu khác (có thế của nhà cung cấp B) dé diéu khiến các cử động của hình

nhân này

Me tigu ma L-Anim hướng tới là:

« Kha ndng trong thick: Cae dic tính của một hình nhân H-Anhn sẽ phải duge

dién dat thanh công ở bắt cứ bộ duyệt cơ bản nảo

* Tink mềm đèo linh hoạt Không có giới hạn trong vấn để quy định xem kiểu

ng dụng nào sẽ được phép đủng các hình nhân H-Anim

© Tinh đơn giãn: Loại bỗ các hình nhân ra khôi ứng đụng một cách đễ dang khi không cần thiết hoặc bổ sung thêm hình nhân 1uới khi cân

Với 3 mục tiêu trên, cân phái định rõ các chỉ tiết kỹ thuật để cỏ thể truy nhập vào biểu

để phân cấp các khớp trực tiếp của hình nhân cũng như cáo đỉnh của khôi hình học có

Trang 6

nhiệm vụ cầu thành nên các đoạn cơ thẻ một mô hình người theo một cách thức cho phép nhằm tạo nên các hình nhân có khả năng thực hiện các cử động [15]

1.2 Các thành phần của một H-Anim

Đồi tượng I-Anim bao gêm 5 thành phần [29]:

Humanoid

Joint Segment

Site

Displacer

Trang 7

s@ BB Seament + Cample sites *

Hình 1: Các thành phân của một H-Anim

Trang 8

1.2.1 Humanoid

Là gốc của mô hình H-Aaim, đối tượng này cho biết cơ chế gắn kết tắt cả các thành phan của hình nhân Cụ thể hon, Humanoid 14 mét container chúa dựng các thành phan dink nghia nén hệ khung xương, hình khối và các giới hạn của mô hình Tỉnh nhân H-Aiim Các thành phẩu nảy bao gồm các đối lượng Joint, Segment, Site và Displacer, chúng định rõ phan lớn các chỉ tiết của mô hinh hình nhân TT- Anim Ngoai ra né cẻn mang thông tỉn vẻ tác giã, bản quyển va những hạn chế thường,

pắp của mô hình Sau đây là ví dụ mô tả lớp đổi tượng Humanoid dùng củ pháp của

VRML V2.0 utf8

PROTO Fhumanoid [

exposediel4 exposedField exposedField exposedField exposedField exposediield exposedfiel4 exposcdField exposedliel4 exposedField exposediield exposedField exposedField ficld

field

SEVec3f MENode MFStnng MENode SEString SkRotation SFVeo3f SFRotation MENode MENode SEVeo3f SFString MENode SFVcc3†

scale

scaleOricntation,

segments sites

translation

version

viewpoints

bboxCenter bbax Size

000

1 H1

1

0010 1II

Trang 9

Lum y ring “exposedField” là các trưởng mả sơrip cỏ thể truy nhập dược dễ dọc

dit liga, con “field” thì không

1.2.2 Joint

Tả đối tượng mê iä khép nổi của mô hình II-Anim Các đối tượng Joint duoc

tổ chức thành câu trúc phân cấp mô lã xôi liên hệ cha-con mang tính thừa kế của các

khớp trang hệ khung xương JGint cũng chính là các container mang thông tin xác

định tên và thuộc tính của mỗi khớp trong hệ khung xương Vi du mé tả lớp đối tượng,

Joint ding ca phap cia VRML V2.0 utf8 nhu sau:

PROTO Joint [

exposedFiekl SFRolalion lnntiOnenatlion 0010

exposedFicld MFFloat Jiimit H

œxposcdField MFFloat stiftness 1111]

cé tay, cing chân nổi giữa khớp đầu gồi vả khớp cẻ chân Ví dụ mô tá lớp đối tượng

Segmentt dùng cú pháp của VRMIL V2.0 uf8 như sau

Trang 10

PROTO Segment [

eventin MENode addChildren eventIn MENode — removeChikhen

exposedl‘ield Si Vec3f centerOfMass 000

exposedField MFNode children ũ

œxposedField SFNodc coord NULL

exposedField MENode — displacers ũ exposedField SFSuing rưme "

exposedFicld SFFloat mass ọ

exposedlield SI'Veo3f momentsOflnertia 111 field SFVeco3l' bboxCenter 000 field S¥Vec3f bboxSize -1-1-1

]

1.2.4 Site

Méi Segment co thể có một số nút Site Déi trong này định nghĩa một số vị

trí đặc biệt có liên quan dén Segment

Đôi tượng Site được sử dụng nhằm 3 mục đích

© _ Dinh nghĩa điểm kết nổi cho cáo đối tượng phụ như quân áo vả trang sức

* Dinh nghia vi tri cho camera áo trong khung tham chiếu của một đổi tượng

Segment

« Đinh ngÌữa vị tri “end-effector” ding trong eac hd théng TK Gnverse kinematic)

|xem giải thích trong phụ lục 2|

Ví dụ mỏ tã lớp đối Lượng Site dùng củ pháp của VRMI, V3.0 ul 8 phu sau:

PROTO Site [

Trang 11

exposedField S¥Vec3f ceuter 000

exposedField MENode children 0 exposedField SFSuing name mm

exposedl‘ield SiRotation rotation 0010 exposedField SEVeo3f scale ill exposedField SFRolation scaleOnentation 0010

exposedField SFVec3f translation 000

]

1.2.5 Displacer

Llinh dang cua timg đổi tượng mạng lưới có thể biến đổi tủy theo yêu cầu của

Từng dụng Ở mức sơ bản nhất, sự biến đổi này chính là thao tác sửa đổi đữ liệu lưu trong trường field cửa đổi tượng mạng lưới Irong trường hợp các mô hình khớp nói (articulated avatar) thi đổi tượng mạng lưởi thudc déi tuong Segment ‘rong trưởng hợp các mỏ hình ludi khéng phang (deformable mesh avatar) thi déi tugng mang luới được xác dịnh trong trường skin của dải tượng Humanoid Chỉ tiết này rất đáng chủ ý vi nó xác định các nhóm đỉnh trong một mạng lưới Vỉ dụ: trình img

dụng có thể cân nhận biết những đỉnh nảo thuộc phân đâu bao gảm cả lông mày bên

trái Các thông tin này được luu trong mút Displacer

Dữ liệu lưu trong, Displacer dược coi như một “gợi ý chỉ dẫn” trong trường,

“hợp ta cần dịch chuyển mốt đính trong mạng lưới Với mô hình khớp nổi thị đổi tượng,

Displacer được lưu trong trường displacer của dối tượng Segmierit Cờn dỏi với

mô hình lưởi không phẳng thì đối tượng Displacer được lưu trong trường displacer

ctia déi tuong Joint Cac thông tin gọi la dé dich chuyén (displacements) nay, durgc

xac dink trong phạm vi của đổi lượng lOinE và biển đổi theo phạm vì của

Humanoid Sau đó bệ render sẽ căn cứ vào chúng đễ áp vào mạng hưới khi render

xô hình lưới thành mô hình 3 chiều thực sự

Trang 12

1-10

Đối tượng Displacer có 3 mức Ở mức độ cơ bản nhất, nó đơn giãn chi dimg

để nhận biết các đĩnh tương ứng với mét đặc trưng đặc biệt nảo đó trên mạng Indi nức hai, nó biểu thị một hoạt động, cơ bắp đặc biệt náo đỏ mả hoạt động này lại biển dỗi các đình theo các hướng khác nhau Ở mức dộ thứ ba, DisplaCer biểu thị cấu hình hoàn chữnh của các đình trong rạng lưới Vỉ dụ, trường hợp một mô hình 3 chiều biểu thị khuôn mặt thỉ mỗi đối tượng DisplaCer sẽ biểu thị gương mặt với một sắc thái nào

dó (vui, rất vui, buồn, rất buôn, cười mm, cười to, bất hạnh, giận dữ )

Mỗi đối tượng Displacer xác định một sơ đồ các vị trí gợi là “đích hình vị? (morph target), né duge dimg dé bién đổi thuộc tính độ địch chuyển của mô hình Mức

độ có dân cũ độ địch chuyên trong mỗi đối tượng Displacer có thể được truyền như

là một tham số từ bên ngoài

Cáo đối tượng Displacer đuợc sử dụng với mục đích chủ yếu là điều khiển các tỉnh thái của khuôn rất, tuy nhiên ta cũng có thể sử dụng chúng cho các phần cơ thể

khác nhau của hình nhân Ví đụ, đừng điều khiến việc cánh tay sẽ thay đổi hinh đáng, uhu thế nào khi cánh tay gập lại, mô phống việc các bắp thịt sẽ căng lên ra sao

Ví dụ mô tả lớp dỗi tượng Site dùng cú pháp của VRML V2.0 utf8 như sau:

Displacer {

eoordlndex | 7, 12, 24, 18 | displacements [ 0 0.0025 0,0 0.005 0,0 0.0025 0,0 0001 0]

name “1 eyebrow raiser action”

}

1.3 Cây phân cấp khung xương

Cũng giống như một cơ thể người, hình nhân 3D sững có bộ khung xương Đây

là cơ sở dễ tiến hành mö phống các chuyển động của hình nhân 3J2 Khung xương trong một mô hình 3 chiều chỉnh là tập hợp dang cây của các đối tượng Joint của mô

inh do

Trang 13

£EA-—11

—— me _

\ ,

Hình 2: Mô hình người và cây khung xương

1.3.1 Mức phân cấp (LOA - Level Of Articulation)

Các mô hình H-Anim có thể cử động được là nhờ thao tác biến đổi thông số transform ctia các khớp, các thông số nảy được ghi trong đổi tượng Displacer Tinh chân thực trong chuyên động của mô hình 3D phụ thuộc rất lớn vào số lượng các khớp

và các đoạn chỉ: Số lượng khớp vả đoạn chi cảng nhiều mô hình cảng tinh vi và

chuyển động cảng mêm mại, chân thực ISO quy định rằng một mô hình H-Anim phải

có it nhất là một Joint góc có tên là HumanoidRoot Tắt nhiên, trong thực tế số

lượng Joint luôn nhiều hơn một Khái niệm mức phân cấp - LOA (Level Of

Articulation) ding để chỉ số lượng Joint được định nghĩa trong một mô hình hình

nhân Mô hình hình nhân có từ 14 Joint tro lên được gọi là “mức phân cấp thấp”, mô

hình hình nhân cỏ từ 72 Joint trở lên được gọi là “mức phân cập cao” Mỗi cây phân

cấp khung xương chỉ chứa duy nhất một đổi tượng Joint cỏ tên HumanoidRoot,

đây là mức thấp nhất trong cây phân cấp ISO quy định cỏ tất cả 4 mức phân cấp Đẻ

đễ hình dung các bạn có thể xem các hình mình họa dưới đây, chúng là kết quả của các file VRML v2.0 duoc coding theo timg LOA

Trang 16

1-14

1.3.2 ISO đặt tên cho các dối tượng Joint

Bay giờ ta thử tìm hiểu về sơ qua về cấu tạo cơ thể người để đề xuất cáy phân

cập khung xương thích hợp cho hình nhân 3D mô phông khmg xương người Hệ

xương trong cơ thể người gồm các khúc xương (cẳng tay, bản tay vả bản chân) nỗi với

các khớp (như khuýu tay, có tay vả mắt cả chân) Khi các khớp xoay sẽ kéo theo các

xương chuyển động, và kéo theo sự chuyển động của cơ thé tay theo phạt vì ảnh

hưởng của khớp xương Vị dụ khi ta xoay cỗ tay thì các ngón tay sẽ chuyên dộng,

hưng các bộ phận khác trên cơ thể thì không Khi ta co đầu gối trái thì chỉ kéo theo

cang chân trái, dủi trải, bàn chân trải và các ngón chân trên bản chân trái chuyên động,

còn các bộ phận khác vẫn đúng yên Bộ khung của một mô hình LI-Amm được xây

dựng như một đây các đối tượng, J0int lỏng nhau, liên kết giữa các đối tượng Joint la

các đối tượng Segment SỐ đính nghĩa tên của các đối tueng Joint nhu sau

Các đối tượng Joint của thân

Lhip T knee Tankle [subtalar 1_midtarsal | _metatarsal

r hip r knee ankle 1 subtalar r_midtarsal |r metatarsal vl5 vH vB về vil vis

v12 val vô vụ v8 vữ

vt6 vi vụ vB về vũ

ve? ve ved ve4 ve3 ve3

1 stomociavieular |] aeromioclavieular |] ghouder lolbow | wrst

+ stemociavieular |z_aoroioelavieular |r shouder r glbow r wrist

sacroiliac (pelvis) | skullbase LtumancidRoot

Trang 17

Các đỗi tượng Joint cia ban tay

VpinkyO [1 pinky] [1 pinky2 1 pinky3 rpmky0 |r phhyl [r phmhy2 r pmky3

Các đối tượng Joint của khuôn mặt

1 eycbnll jomi 1 gyeball jøinl

1 eyebrow jomt — l eyebrow joimt Leyelid_joint L eyelid jout temporomandibular

Trang 19

temporomadibular : jaw 1_stemoclavicular : |_clavicle

1 thumb3 : 1 thumb distal

1 indexO : 1 index metacarpal Lindexl : 1_index_proximal

1 index? : 1 index middle

1 index3 : 1 index distal

1 middleO : 1 middle matacarpal

1 middle! : 1 middle proximal

1 middle? : 1 middle middle

1 middle3: Imiddle distal

| ring: 1 ring metacarpal

L ring] <1 ring proximal

1 ring? 1 ring middle

I ring3 : 1 ring distal

1 pinkyO: 1 pinky metacarpal

1 pinky! :1 pinky proximal

L pinky? : |_pinky_middle

I pinky3 :1 pinky distal

r stemnoclavicular : r clavicle r_acromioclavicular : r_seapula

r shoulder : r upperarm

r elbow : r forearm 1_wưist :r hand r_thumbl : r_thumb_metacarpal

r thumb2:r thumb proximal 1_thumb3 ; _thumb_distal r_index0 : r_index_metacarpal + indexl :r index proximal 1_index? : 1_index_middle 1_index3 : _index_distal

Trang 20

1-18

+ miđdleO :r míđdle metaoarpal + miđdlel :r miảdle proximal

r middle2 :r middle rniddle

r middle3:r middle distal

r_ringO:1_ring metacarpal

r ring] :r ring proximal

r ring2:r ring middle

r ring3 : r_ring_distal

r pinkyO:r pinky metacarpal + pinkyl :r pinky proximal

+ pinky2:r pinky middle

+ pinky3:r pinky distal

1.4 Các điểm đặc trưng trên cơ thể người

Dựa vao kiến thức giải phẫu học co thế người, ISO đưa ra danh sách các điểm

đặc biệt lrên ruổ hình người |lài hệu TSO số 7250| Dưới đầy là bình mô tả vị lrí và

bảng, Hệt kế các diễm đặc trưng của một H-Anim.,

Trang 21

'Hình 7 : Các điểm đặc trưng trên cơ thể người

Trang 22

] trochanleron 61 1_calcancous post

Trang 23

ISO kiểm soát việc mô hình hỏa các dạng hình nhân H-Anim để đảm bảo các

chuyển động (animation) được xây dựng cho một dạng hình nhân H-Anim thi cũng cỏ

thể triển khai cho một dạng hình nhân H-Anim khác Công việc này thực chất là xác

định trạng thái của một mô hình trước khi áp các chuyên động lên nó Điều nảy cũng

đâm bảo tính nhất quản của các mô hình H-Anim

Quy định của ISO là các dạng hình nhân sẽ được mô hình hóa ở thể đứng, mặt

hướng theo chiêu Z+, tức là nhìn đối diện với hưởng nhìn thắng của chúng ta Các trục

của không gian 3 chiều được quy định như sau

Hình 8: ISO quy định hệ trục tọa độ 3 chiều

Trang 24

Hình 9: Mô hình 3D của hai hình nhân

Cánh tay sé dudi thẳng và đặt song song với thân hình với lòng ban tay up vao

đủi Tay coi như phẳng, trục của các khớp từ 1 đến 3 của các ngón tay song song với

trục Y vả trục của ngón tay cải nghiêng một góc Z2 radian (90 độ) với trục Z+ Như

vây, hệ trục tọa đô môi khớp của ngón tay cái phải xoay lại đẻ thắng hàng với toàn bộ

hình nhân

Trang 25

Hinh 10: Truc tọa độ của các ngón tay

Khuôn mặt được mô hình hóa với các lông máy giãn ra, môi khép lại và mắt mở

Hình 11 : Mô hình 3 chiều diễn tả khuôn mặt

Trang 26

Cáo hình nhân phải được xây dung với tý lệ kích thước phủ hợp với cơ thể con

chương trình.

Trang 27

Chương 2 - GIỚI THIỆU MỘT SỞ NGÔN NGỮ LẬP TRINH 3D

2.1 SAM

SAM (Solid Agenls int Motior), là một ngôn ngữ lập trinh 3D tlủ giác đành cho

các hệ thống song song va animation Vé mit kỹ thuật, SAM là ngôn ngữ lập trinh:

tướng trạng thái, đảng bộ, song song SAM rat thích hợp trong việc mồ hình hóa các

trang thái phâu ứng Chương trình viết bằng ngôn ngữ SAM là mội lập hợp các agent

mà trong đỏ chúng giao tiếp với nhau thông qua việc trao đổi các thỏng điệp.[rạng thái của agent được xác định bằng nghĩa của luật sản xuất với một điều kiến và một đây các

Tảnh động Lượng ứng với điểu kiện đó Các thành phần chính: như ageul, thông điệp và

hiật là các đồi tượng 3D Các thành phân can được mồ tả bằng text thông qua các form

thì các thông tín quan trọng về dối tượng đỏ

agemt, thông điệp và cáo luật đều có một biểu diễn 3D mang tính tượng trưng như khối cầu, khối lập phương, khối trụ và khói hình chớp nón tủy iuộc vào từng ứng dụng cụ thể Các hoat déng animation trong chuong trình 31) được thực hiện bằng cách lam min

cáo chuyển động liên tiếp vả xác định tỷ lệ giữa các đối tượng Miột mặt, điều này cho

phép phân tích chỉ tiết từng thao tác cứ dộng, mặt khác, nò có một ưu diễm la người lập trình chỉ phải điển khiển một môi trường và một ngôn ngữ cho mọi đặc tã, thực hiện

và hoạt động (animation) ctta mdt chuong trình thêm vào đó, các biểu điển 3D tùy ý

Trang 28

hive

we flowers

Kaluya Yamamoto, một giảo sư của trường đại học Kyoto đã xây dựng một ngôn ngữ

lập trinh 3D với cơ chế khác, trong đỏ thế giới 3D được điền tả bằng chính thế giới 3D

chứ không phải bằng ký tư như các ngôn ngữ khác Đó là 3D-Visulan Đây lả ngôn ngữ

3D đầu tiên theo cơ chế luật viết lại (rewrite-rule-based language), trong đỏ cả chương

trình và đữ liệu được mô tả bằng các 3D-bitmap Đây là một đặc điểm mới mẻ giúp

3D-Visulan xây dựng nên các ứng dụng 3D như máy Turing hay trỏ chơi 3D Space- Invaders

Kakuya định nghĩa 3D-bitmap là "một tập các khỏi lập phương 3 chiều co các

thuộc tính màu sắc" và thể giới la "thông tin được diễn đạt bằng các 3D-bitmap" Trong

3D-Visulan cả chương trình vả đữ liệu được điên tả bằng các 3D-bitmap vả chúng

được coi như một không gian tương tác giữa người lập trình và máy tỉnh

Trang 29

Người lập trình có thé hiểu (theo đõi) được các trạng thải tỉnh toán Việc lập

trình dược tiến hành trên bộ soạu tháo tích hợp 3D-biunsp có khả năng chạy các

chương trình 3D Dé chuyển các tiến trình tính toàn đến cho máy tính, người lập trinla kiến tạo một chương trình và đữ liệu khởi tạo bằng các 3D-biunap Chúng sẽ được biên

Nam 1990, Guido van Rossum đã xảy đựng nẻn một ngôn ngữ lập trình hưởng

dối tương khả mạnh có tên là Python Lúc dằu, bản thân ngôn ngữ này không hồ trợ

việc tạo ra các sẵn phẩm để họa Thư viện để họa TK chỉ dùng để xảy đựng các mỗ

Tỉnh đỗ họa 2D nhưng vất khó sử dựng, Cho đến tận năm 2000, David 8chorer mới xây

dung médun dé hoa 3 chiều cho Python có tên là "Visual" có tính năng ni bat la dic biệt đễ đừng Dây là một chương trình cá khả năng xây đựng các đối tượng 3D (hình

câu, lập phương, các dường cong ) và dịnh vị chúng trong không gian 3D Visual,

chạy với tư cách là một luông riêng biệt, tự động cập nhật các khung cảnh 31) nhiều lần trong một giây nhằm phản ảnh chính xác vị trí hiện tại của các đổi tượng 3D Người lập trình sẽ không phái cân phải quan tam đến vẫn dễ quản lý công việc hiển thị mà tập

trung vào khía cạnh tính toán của chương trình Nguời dùng sẽ duyệt khung cảnh 3D,

Trang 30

bang cách sử dụng chuột để zoom vả quay trong khi chương trình đang chạy Visual cũng hỗ trợ toàn bộ phân đại số véc tơ

VPhython rất hữu ich khi trình điển những mô phỏng hình dùng vẻ các hiện

tượng kỳ thủ của vật lý học Là sản phẩm mã mở vả miễn phi vả có chức năng xuất ra

các mô hinh 3D real-time Chung rat dé str dung kẻ cả với những người chưa có kinh

nghiém [18]

2.4, Direct3D

Direct3D là một API (Application Programming Interface) do hoa ở mức thấp cho phép người dùng render [phụ lục 2] thể giới 3D dủng các thiết bị hỗ trợ 3D Direct3D đóng vai trò trung gian giữa ứng dung và các thiết bi đỏ họa (phân cứng chuyên về 3D) Vi du, để ra lênh cho thiết bị đồ họa xóa màn hình, trình ứng dụng phải

gọi phương thức IDirect3DDevice9::Clear của Direct3D Hinh dưới đây chỉ ra môi liên

hệ giữa trinh ứng dụng, Direet3D và phân cứng

Hinh14 : Moi lién hé giita trinh ting dung, Direct3D va phan cứng

Direct3D dinh nghia tap các giao điện va cae phurong thire ma Direct3D dua ra

cho người lập trình ứng dụng Những giao điện vả phương thức nảy cho thấy một tập

hợp đây đủ các tỉnh năng mà Direct3D hỗ trợ Chu y rang chỉ Direct3D hồ trợ má thôi

chứ không có nglữa là phân cứng (mà hiện giờ đang cài Direet3D) hỗ trợ

Tình trên cho ta thấy, có một bước trung gian giữa Direct3D và thiết bị đỏ họa,

đó là HAL (Hardware Abstraction Layer) Direct3D không thẻ tương tác trực tiếp với thiết bị đồ họa Nguyên do là vì hiện nay trên thị trưởng có rất nhiều loại card khác

nhau Chúng có tính năng khác nhau và cách thức thực hiện công việc cũng khác nhau

Ví đụ, 2 loại card đỏ hoa khác nhau có thê thực hiện thao tác xóa mản hình theo 2 cách

Trang 31

thie kha nhau Boi vay, Direct3D yéu cau cac nha san xuất phan củng phải cung cấp TIAL TAL là tập các mã xác định loại thiết bị để từ đá điều khin thiết bị thực hiện các thao tác Bằng cach nay, DirecÐ Iránh được việc phải nắm chỉ liết từng loại thiết

bị một và như vậy nó độc lập với các thiết bị phân cũng [45] [46]

2.5 Cg

Ca-hay "C for graphics" (tạm dịch: C dành cho đổ họa), là một ngôn ngữ bac

cao đành cha dé hoa 3D do Nvidia va cáo trợ lý của Mierosoft thiết kế, có nhiệm vụ

cung cấp cáo giao didn 3 bac cau cho DirectX va OpenGT No trong thich 100% với

DX9, Ban than Ce duge tao ra tr bai thinh phan chỉnh: các đặc tỉnh vẻ mặt kỹ thuật

lap trinh cita ngén neit va cac bé dich Cz trong img Céng bé cia Nvidia bao gém chi

tiết về bộ dịch Cg, các chỉ tiết vẻ kỹ thuật lập trình ngôn ngữ Cg, bộ duyệt Cg (dành cho việc tạo mẫu và dụng hình) và các công cụ xây dựng khá Cg được thiết kế với hy vọng giúp lập trinh hiệu quả ở mức cao và dé dimg cho cac nhá xây đựng sản phẩm phần mềm Người lập trình có thể xây dựng các chương trình bằng Cg đã được dich

sẵn trong các mỗi trường cụ thể hoặc biên dich trong khi chạy đề haạt động qua nhiều

các gói tin dùng cho việc lập trình các mg đựng 3D Chỉ tiết về Java3D sẽ được trình bày kỹ

trong phần 3 của luận văn nảy

Trang 32

Chương 3 - CÁC CÔNG CỤ SỬ DỤNG 3.1 JavagD

3.1.1 Téng quan vé Java3D

Java3D là ngôn ngữ lập trình đề họa do hãng Sun MicroSystem xây đựng, một thành viên trong dòng ngên ngữ lập trình Java vốn đã rất nẻi tiếng của Sun Mục tiêu

chính của nó là giúp hỗ trợ xây dựng các ứng dụng dỗ họa 3 chiều và các appleL Ngôn

ngữ này eung cập cho người lập trình các cấu trúc ở mức cao trong việc xây đựng và

điều khiến các bình khối 3D, kiến tạo rên các câu trắc dùng để render các hình khối 3D

đó Trong thế giới áo 3 chiều, các câu trúc render là thành phần không thẻ thiểu và nó chính là tác nhân cung cấp cho bộ địch của Java3D day đủ thông tin để render bản than thể giới ảo đó một cách hiệu quả nhất, Java3D cũng mang uu diém lớn nhất của Java là

*độc lập platform", do đỏ nỏ có được khá năng, tương thích lớn đối với nhiều piatform Các chương trình xây đựng bằng Java3D cũng tương thích tuyệt vời với mạng Internet bởi vi các ứng dung và các applet lập trình bằng Java3l) APL có thể truy nhập tới toản

hoa Java3D con giới thiệu một số khái mệm mới mà từ tước nay được coi là không,

thông dụng trong môi trường đỗ họa nhú âm thanh không gian 3D Khả năng âm thanh của Java3D trong tương lai sẽ giúp dưa ra nhiều ứng dụng mới mổ và thủ vị trong

nhiều lĩnh vực, đặc biệt là nghành công nghiép Games

3.1.2 Mục tiêu của Java3D

Mục tiêu chính của Java3l) là các ứng dựng đỗ họa ở mức cao Ngoài ra,

Java3D con oé các mục tiêu khảo cũng rât quan trọng như: [1] [2] [3]

Trang 33

œ Cung cấp một tập đa dạng các đặc tính trong việc kiến tạo các thể giới 3D; loại

bổ các yếu tố không cần thiết hoặc các đặc điểm không rõ ràng nhằm hồ trợ tối

đa cho lập trình viên

©) Cung cap m6 hinh lập trình hướng đối tượng bậc cao cho phép các nhà tết kế triển khai các ứng, dụng phức tạp vả các applet một cách nhanh chóng

«_ Cưng cấp các hỗ trợ tải (Ioader) thời gian thục Nó cho phép Java3D thích nghỉ với nhiều đạng file, vi dụ như dạng đặc biệt CAD, các đạng xen kẽ, VRML 1.0

va VRML 2.0

3.1.3 Mô hình lập trình

Tava3D là API hướng đối Lượng Cúc ứng dụng xây dựng trên các thành phân dễ

họa riêng rẽ, đó là các đổi tượng đã được phân tách, sau đỏ liên kết chúng lại theo một cầu trúc hình cây gọi là scene graph Những ứng dụng này sẽ điều khiển các thành phần đổ họa bang cách dùng cáo bộ truy nhập dã dược xây dựng siin cho tung doi tượng, cáo bộ biển đổi và phương thức kết nối giữa các nút trong cây scene graph Java3D không thế đoán trước hay hã trợ trực tiếp tắt cã những gì mà một ứng dựng 3D cân đến Thay vào đó, các nhá thiết kế cho phép bổ sung các hỗ trợ thông qua mã java

Hệ thẳng CAD (computer-aided design) hodc hé théng animation sé định nghĩa các đổi

tượng Các ứng dụng Java3D sẽ nhận các đối Lượng đó Như vậy, cáo rà thiết kế mẫu

đỗ họa có thể dùng bất cử một công cụ đồ họa nào, miễn là họ thấy tiện lợi, để tạo ra

một mô hình 3 chiều Mô hình này san đỏ sẽ được xuất ra file dit liệu có cân trúc được Java3D hé trợ (tức là cỏ thể đọc dọc hiểu dữ liệu chứa trong file), Java3D sẽ dọc các

thông tin của Ble dữ liệu đỏ để cung cắp cho bộ render của nó 136 render sé dura trén

các thông tín này mã tái thiết lại mô hình 3 chiểu đã có Ví dụ, trong luận vẫn này tôi dang 3ds max là một công cụ rất mạnh trong, thiết kế dỗ họa dễ xây đựng xnô hình ban tay người, sau đó xuất mô hình này ra một file đuổi là VRMIL (một trong những dang

Ble mà Java3D hỗ trợ) Trong chương trình ứng dụng Java3D sẽ có một phương thức

Trang 34

Ga — 32

lam nhiém vu doc dé ligu tir file VRML nay đẻ chuyển cho bộ render nhằm tái thiết lại

mé hình bản tay trong của số chương trình của Java3D

31.3.1 Câu trúc cây trong tỗ chức dỗi neong vita Java3D

Java3l2 định nghĩa các lớp cơ bản khác nhau để thiết kế và biên đổi (từ gốc:

manipulate — van dung bang tay) mét scene graph và điều khiến việc hiến thị cũng như

sender cae bink 3D [6] Ta cé thé mé 1a loan bé cay cau trúc đối wong cin Javu3D nhìy sau’

VirtualUmverse

Locale View

PhysicalBody Physicallinvironment

3.1.8.2 Mô hình lập tình Scene Graph

Mô hình lập trình đỗ họa khung cảnh (scene graph) của lava3D cung cấp một

cơ ghế tuy đơn giản song lại rất lĩnh hoạt để hiển thị và rendor khung cảnh Mội seei

Trang 35

graph chửa dựng những mô tả hoàn chính vẻ một khung cảnh hay một thể giới äo Nó

Tnang các thông tin vẻ đữ liệu hình khối (hình cầu, trụ, lập phương, luới ), các thông,

tẩm về thuộc lính (ảnh sang, mau sắc, độ bóng, ), thông tin về góc nhìn, Các thông lần

xảy sẽ được tổng hợp lám đữ liệu cho việc render chính khung cảnh đỏ từ góc nhìn đã được chi ra

Java3D AFI hoàn thiện các API đồ họa đã có bằng cách loại bé đi nhiều yêu câu

{ith toán hoặc cúc yêu câu nh khác trong lập trình mà các API trước đỏ vẫn dỗi hỏi

Như vậy, nó cho phép người lập trình tập trung vào điều khiển các đổi tượng hình học

hơn là việc giãi quyết eụ thể gái khang lưới tạo nên chúng, lập trung vào kết cầu giữa

các dối tượng hình học hơn là phải việc lập trình thao tác render dễ sao cho các hinh khối này đạt được hiệu quả như mong muồn [6]

3.1.3.3 Các phương thức render

Java3l2 cung cấp 3 phương thức render Đó lả: phương thức render trực tiếp

(Immediate Mode), pturong thie render hima gitt (Retained Mode), phương thức renđer

Didn dich-lun gitt (Compiled-retained Mode) Picu nay cho phép người dùng thoải mái

lệc lựa chọn cách thực hiện ruột ứng đụng Java3D [lau hét những người xây

trong

đựng fmg đụng Tava3T2 đêu thích những cãi tiên về hai mặt tiện nghỉ vả thục hiện mà

cáo phương thức retamed và cornpiled-retained mang lại |6] 13]I25]

3.1.3.3.1 Immediate Mode (IM)

Ở chế đô này, cáo ứng đụng có thé sit dung hoặc khẳng câu trúc scane-graph

của Java3D Người dùng sẽ có nhiều tùy chợn hơn rhưng đi kèm với ưu điểm nay là chỉ phí khi chạy chương trình cao Trong chế độ này, lava3D không được cưng cấp nhiều thông tin ở mức cao liên quan tới các đối tượng đô họa hoặc môi liên hệ giữa chúng, Do giấn thiểu hỏa các thông tin bao quát như vậy nên Java3D chỉ có thể hỗ ượ tính toán ở rnửe cục bộ từng đổi tượng thay cho người lập trình chứ không thể giúp hỗ

trợ ở mức bao quát được,

Trang 36

Có hai dang Immediate Mode 1a phzong thitc render tryc tiép thuan tuy (Pure

Immediate Mode-PIM) va phuong thie render true tiép tron (Mixed Immediate Mode- MIM)

PIM

Phương thúc này đành cho các trình ứng đụng vả các applet được lập trinh với ý

đỗ không muốn Java3D Lư động render scene graph Nhiing ứng dụng kiểu nảy thậm chí không muốn xây dựng cau tric scene graph đẻ biểu diễn các dữ liệu để hoa Tuy nhiên, các ủng dụng này lại muốn sử dụng các thuộc tính của các đổi tượng Java3ID để thiết đặt các Wang thai dé boa và các khỏi hình 3 chiều do Java3D cúng cấp sin, ding

thời đã render sẵn

Cae ung dung PIM bude phải xây dựng một tập hợp tối thiểu các đổi tượng

Java3D trước khi tiến hanh render Thém vao do, với đồi tượng Canvas3D, tmg, dụng,

tạo một đối tượng View cùng với các đối lượng PhysicalBedy va PhisicalEnvironment

liên quan, cáo thành phân soene graph như: Virtnal LUniversity, Looale, BranchGroup,

TransformGroup cing các biển đổi có liên quan và cuối cùng là ViewPlafonn để xác dinh vi tri và hướng trong cái thể giới ão đó nhằm tao ra khung nhìn Hình đưới dây mô

ta cầu trủe đó

Trang 37

Hình 15: Chế đệ PIM (Pare Immediate Mode)

Java3D cưng cấp nhiều chức năng tiện ích để xây dựng các cầu trúc thay thể cho các ứng đụng áp dung chế độ PIM, làm người lập trình bớt phải quan tâm đến phân phối cánh rong chế độ nảy, người dùng phải tự mình kết trúc quá trình render cua

Taya3D thông qua phương thức stopRenđerQ của lớp Canvas3D

Phương thức này yêu câu trinh ứng dụng, phái xây dựng seene grapl và xác định

xem thành phân nào trong scene graph cé thế thay đổi trong suốt qua trinh render

Scone graph mô tả từng dối tượng trong thể giới ão, các mỗi liên hệ giữa chủng và cách thủc mà trình ứng dụng sẽ điều khiển chứng biến đối

Trang 38

3.1.3.3.3 Compiled-Retained Made (CRM)

Phương thức này giống retained mode ở chỗ nỏ cũng yêu cầu trình ứng dụng, phải xây dụng scene praph và xác định xem thanh phan nao trong scene graph có thể thay đổi trong suốt qua trinh render Thém vao đó, trình ứng dụng có thể biên địch toàn

bộ hay một phản cée subgraph, là các thành phản câu thành nên một scene graph hoàn

chỉnh Java3D sé dich céc subgraph này và việc biểu điễn cáo subgraph da duoc bién dich có thể không hoàn Loàn tương ứng như cấu trúc cây nguyên gốc mã trình ứng dụng lập nên, tuy nhiên về mặt chức năng thỉ hoàn toàn tương đồng CRM là phương, thúc thực hiện cấp cao nhất

3.1.3.4 Vin dé mi rong các phương thức

1iẫu hết các lớp Java3l) chỉ đưa ra các phương thức truy nhập vả tính toán Các phương thức này lại chỉ đứng cho các trạng thái bên trong của đổi tượng Java3D khai báo hầu hết các phương thức ở dạng final, Các trình ứng dụng có thể mở rộng thêm các

lớp của Java3D và bé sung thêm các phương thúc mới Tuy nhiên các phương thức

adi này không thể chông lên các phương thức làm riiệm vụ đuyệt dần cấu trúc cây

của scene praph

3.1.4 Cách thức thực hiện của Java3D

31.41 Thực biện thea kiểu phân lớp

Môi trong những yêu Lỗ quan Irọng quyết đình tổng chỉ phí khi chạy một chương trình ứng dụng viết bằng Java3D là chỉ phí thời gian dễ render các hình khối 3 chiều mà người dùng nhìn thấy ở góc nhân của mình (các hình khối bị lấp đưới các

Tảnh kháe s bị loại bổ khi render để tăng tốc độ và liết kiệm chi phi) Việc thực thí của

Java3D khi được phân lớp đã tận dụng triệt đẻ những tru điểm của các API mức dưới

có sẵn trong, hệ thống Dặc biệt, chủng ta nhận thay hoạt động của Jaya3D là dựa vào

OpeuGI., Dircot3D vàQuickDrew3D, là những lớp đưới đã có sẵn Điều đỏ có nghĩa là

Trang 39

thao tac render etia Java3L) sé duge ting tốc trên nhiều hệ thông có hỗ trợ các API mức

thấp [13]

31.42 Đãi với các tiết bị phần atng

Java3l2 được thiết kế để phủ hợp với nhiều nên táng phần cứng và phần mềm

khác nhau: từ các card DC game mức thấp, các bộ render mức đưới, các máy trạm ở

unite trung bình cho đến các bộ tạo ânh hoạt động & muữc cao

Các chương trình Iava3D được kỹ vọng sẽ cho một tốc độ renđer ôn định trên

hau hét cde PC hiện đại, đặc biết là đôi với các card tăng tộc đồ họa

Java3D dã dược thiết kế dễ có thể biến đổi một cach mém déo khi nén tang phan cứng bên dưới tổng tốc vượt ngưỡng Trong tương lai, các bộ tăng tốc game 3l) sẽ hỗ

trợ cho những thể giới ảo phức tạp nhiều hơn những gì mà các máy tính đất tiển đã làm

trong những năm trước đây, Y đỗ của các kiến trúc sư ngôn ngữ Java3l) rất rõ ràng,

Java3D sẽ được chuấn bị sẵn đẻ bắt kịp với sự tăng tốc của phân cứng

3.1.5 Cầu trúc cửa một trình ứng dụng viết bằng Java3D

31.5.1 Cấu trúc xcenegrapk

Hình dưới đây sẽ cung cấp cho người đọc một cải nhìn tổng quan nhất về câu trúc scene graph của một trinh ứng đụng Iava3D

Trang 40

‘Hinh 16: Scene Graph cia wil trish img dung Java3D-

Pau (én ta thay xuất hiện một đối tượng tối cao là VitualUniverse Object Mét dối tượng VirtualUniverse dinh nghia một “vũ trụ áo” Java3l2 cho phép tạo nhiều hơn

ant “vii bu ão “một hệ thông tổng quát ở mức cao nhất mặc đủ đa số các tình ứng

dụng chỉ cần dùng một hè thông Một đổi tượng Virtual Universc cung cấp một mặt nén cho cdc scene graph ‘I'at cA cáo seene graph của Java3l2 phải kết nối với một đổi tuong Virtual Universe thi mai có thể hiển thị được

Duéi Virtual Universe la đổi tượng Locale Object Đối tượng này định ngÌữa

géc gần với mãi graph con Một Virhual Universe có thế mang nhiễu đổi trong Locale

Trong hình vế trêu thị ruột đối (ong Virtual Universe chi chita mot Locale duy nhất và

được xác định là gắn vào gốc ở tọa độ (0.0, 0.0, 0.0)

Ban than scene graph khỏi dau với các nút Branch Group Mỗi BranchGroup cứng cấp một gốc cho mdl graph con được gợi là các graph nhánh Chỉ có các đối tượng BranchGrơup mới kết ni tới được các đối tượng Locale Trong hình trên ta thây

có 2 graph nhánh và do vậy có 2 núi BranchGiaphi

Gắn với BranchGroup bên trái là dỗi tượng con Behavior và TransfonnGroup Tổi tượng Behavior chứa mã code Iava nhằm thao táo với ma trận dich chuyển tương, ứng với mỗi đối tượng hình khối Đối lượng Trans[ormnGiroup xác định vị rỉ (liên quan

Ngày đăng: 21/05/2025, 20:33

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[2] Henry A. Sowizral, David R Nadeau, (San Diego Supercomputer Center University of Canifomia at San Diego, “Introduction to Programming with Java312” Sách, tạp chí
Tiêu đề: Introduction to Programming with Java312
Tác giả: Henry A. Sowizral, David R Nadeau
Nhà XB: San Diego Supercomputer Center University of California at San Diego
[5] Christian Geiger, Wolfgang Mueller, Waldemar Rosenbach, C-LAB, Fucrstenallec]1, 33102 Paderbom, Germany, “S444 - An Animated 3D Programming Language” Sách, tạp chí
Tiêu đề: S444 - An Animated 3D Programming Language
Tác giả: Christian Geiger, Wolfgang Mueller, Waldemar Rosenbach
Nhà XB: C-LAB
[6] Sun Microsystem Ine, “Java 3LY1M Programming: A Technical Overview” Sách, tạp chí
Tiêu đề: Java 3LY1M Programming: A Technical Overview
Tác giả: Sun Microsystems Inc
Nhà XB: Sun Microsystems Inc.
7] Kakuya Yamamoto, Pacific Workshop on Distributed Multimedia Systems (DMS96}, pp.199-206, (1996), “3D-Viswlan: A 3D Programming Language for 3D Applications” Sách, tạp chí
Tiêu đề: 3D-Viswlan: A 3D Programming Language for 3D Applications
Tác giả: Kakuya Yamamoto
Nhà XB: Pacific Workshop on Distributed Multimedia Systems (DMS96)
Năm: 1996
[8] Nadia Magnenat Thahmann, MIRALab, University of Geneva, Danicl Thalmann, Computer Graphies Lab, LPI'L, “Computer Animation in luture Technologies” Sách, tạp chí
Tiêu đề: Computer Animation in Future Technologies
Tác giả: Nadia Magnenat Thalmann, Daniel Thalmann
[9] Johns Hopkins Department of Computer Science, “Computer Animation” Sách, tạp chí
Tiêu đề: Computer Animation
Tác giả: Johns Hopkins Department of Computer Science
[4] Barbara LeMaster, AAA paper, “Anthropological Linguistics and Deaf Language Policies in the U.S.A. and Ireland: Public Debates and our Possible Roles” Khác
[12] Norman L. Badler, Cary 13. Phillips], Bonnie L. Webber, Department of Computer and ulormation Seicnce, University of Permsylvariia, Philadelphia, PA Khác

HÌNH ẢNH LIÊN QUAN

Hình  1:  Các  thành  phân  của  một  H-Anim - Luận văn Ứng dụng mô hình chuyển Động hình nhân 3d vào tương tác người máy và e learning
nh 1: Các thành phân của một H-Anim (Trang 7)
Hình  2:  Mô  hình  người  và  cây  khung  xương. - Luận văn Ứng dụng mô hình chuyển Động hình nhân 3d vào tương tác người máy và e learning
nh 2: Mô hình người và cây khung xương (Trang 13)
Hình  3:  LOA  mirc  0 - Luận văn Ứng dụng mô hình chuyển Động hình nhân 3d vào tương tác người máy và e learning
nh 3: LOA mirc 0 (Trang 14)
Hình  5:  LOA  mức  2 - Luận văn Ứng dụng mô hình chuyển Động hình nhân 3d vào tương tác người máy và e learning
nh 5: LOA mức 2 (Trang 15)
Hình  8:  ISO  quy  định  hệ  trục  tọa độ  3  chiều - Luận văn Ứng dụng mô hình chuyển Động hình nhân 3d vào tương tác người máy và e learning
nh 8: ISO quy định hệ trục tọa độ 3 chiều (Trang 23)
Hình  9:  Mô  hình  3D  của  hai  hình  nhân - Luận văn Ứng dụng mô hình chuyển Động hình nhân 3d vào tương tác người máy và e learning
nh 9: Mô hình 3D của hai hình nhân (Trang 24)
Hình  11  :  Mô  hình  3  chiều  diễn tả khuôn  mặt - Luận văn Ứng dụng mô hình chuyển Động hình nhân 3d vào tương tác người máy và e learning
nh 11 : Mô hình 3 chiều diễn tả khuôn mặt (Trang 25)
Hình  12  :  Biểu  diễn  tượng  trưng  (bên  trái)  và  cụ  thể  (bên  phải)  các  đối  tượng  3D - Luận văn Ứng dụng mô hình chuyển Động hình nhân 3d vào tương tác người máy và e learning
nh 12 : Biểu diễn tượng trưng (bên trái) và cụ thể (bên phải) các đối tượng 3D (Trang 28)
Hình  15:  Chế  đệ  PIM  (Pare  Immediate  Mode) - Luận văn Ứng dụng mô hình chuyển Động hình nhân 3d vào tương tác người máy và e learning
nh 15: Chế đệ PIM (Pare Immediate Mode) (Trang 37)
Hình  17:  Khung  xương  bản  tay  người - Luận văn Ứng dụng mô hình chuyển Động hình nhân 3d vào tương tác người máy và e learning
nh 17: Khung xương bản tay người (Trang 50)
Bảng  sau  đây  liệt  kê  thuật  ngữ  y  học  của  các  xương  thuộc  bản  tay - Luận văn Ứng dụng mô hình chuyển Động hình nhân 3d vào tương tác người máy và e learning
ng sau đây liệt kê thuật ngữ y học của các xương thuộc bản tay (Trang 51)
Hình  18:  Minh  họa  các  loại  khớp  xương  tay. - Luận văn Ứng dụng mô hình chuyển Động hình nhân 3d vào tương tác người máy và e learning
nh 18: Minh họa các loại khớp xương tay (Trang 53)
Hình  19:  mô  hình  bàn  tay  3D  trong  chương  trình  FamiliarHand - Luận văn Ứng dụng mô hình chuyển Động hình nhân 3d vào tương tác người máy và e learning
nh 19: mô hình bàn tay 3D trong chương trình FamiliarHand (Trang 55)

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm