TAILIEUCHUNG - Các bước đầu về DirectX phần 6

Biến objMat ở trên biểu diễn ma trận gốc của đối tượng. nhân ma trận của đối tượng với ma trận tỉ lệ ta sẽ có thể thu phóng đối tượng khi vẽ. | Beginning DirectX9 Dịch bởi TransTeam diễn đàn D3DXMatrixScaling matScale Nhân ma trận đối tượng với ma trận tỉ lệ D3DXMatrixMultiply objMat objMat matScaling Biến objMat ở trên biểu diễn ma trận gốc của đối tượng. nhân ma trận của đối tượng với ma trận tỉ lệ ta sẽ có thể thu phóng đối tượng khi vẽ. Thứ tự trong các phép tính toán ma trận Thứ tự trong các phép toán là rất quan trọng. Ví dụ như nếu bạn muốn xoay một đối tượng quanh tâm của nó và sau đó dịch chuyển nó đi đâu đó thì trước tiên bạn cần tính toán với ma trận xoay trước tiếp đó là đến ma trận tịnh tiến. Nếu hai phép tính này được đổi chỗ cho nhau thì đối tượng sẽ được tịnh tiến đến 1 vị trí khác sau đó mới được xoay quanh gốc tọa độ. Điều này có thể làm cho đối tượng được đặt ở một ví trí khác và hướng theo một hướng khác trong không gian. Đoạn code sau chỉ ra trình tự đúng để thực hiện phép xoay và tịnh tiến đối tượng D3DXMATRIX objRotate D3DXMATRIX objTranslation D3DXMATRIX objFinal phép xoay D3DXMatriXRotationY objRotate D3DXToRadian 45 phép tịnh tiến D3DXMatrixTranslation objTranslation nhân ma trận xoay và ma trận tịnh tiến với nhau D3DXMatrixMultiply objFinal objRotate objTranslation thực hiện phép biến đổi trong không gian thực pd3dDevice- SetTransform D3DTS_WORLD objFinal Bước thứ nhất là tạo ma trận xoay đối tượng objRatate. Sử dụng hàm D3DXMatrixRotationY như trên đối tượng sẽ được quay một góc 45 độ quanh trục Y. Tiếp theo ta tịnh tiến đối tượng đã xoay một đơn vị về bên phải bằng cách sử dụng hàm D3DXMatrixTranslation. Cuối cùng ta tạo ra ma trận biến đổi bằng cách nhân ma trận xoay và ma trận tịnh tiến với nhau với hàm D3DXMatrixMultiply. Nếu ma trận xoay và ma trận được đảo chỗ cho nhau hoán vị trong lời gọi hàm D3DXMatrixMultiply thì phép tịnh tiến sẽ được thực hiện trước phép xoay và đối tượng bị rời sang vị trí khác. Tạo một camera bằng các phép chiếu Bạn có thể tạo ra một camera trong Direct3D bằng cách định nghĩa một ma trận cho bước projection

TAILIEUCHUNG - Chia sẻ tài liệu không giới hạn
Địa chỉ : 444 Hoang Hoa Tham, Hanoi, Viet Nam
Website : tailieuchung.com
Email : tailieuchung20@gmail.com
Tailieuchung.com là thư viện tài liệu trực tuyến, nơi chia sẽ trao đổi hàng triệu tài liệu như luận văn đồ án, sách, giáo trình, đề thi.
Chúng tôi không chịu trách nhiệm liên quan đến các vấn đề bản quyền nội dung tài liệu được thành viên tự nguyện đăng tải lên, nếu phát hiện thấy tài liệu xấu hoặc tài liệu có bản quyền xin hãy email cho chúng tôi.
Đã phát hiện trình chặn quảng cáo AdBlock
Trang web này phụ thuộc vào doanh thu từ số lần hiển thị quảng cáo để tồn tại. Vui lòng tắt trình chặn quảng cáo của bạn hoặc tạm dừng tính năng chặn quảng cáo cho trang web này.