PDA

View Full Version : Cho hỏi cái...



CrazyBabe
04-01-2003, 23:13
Hic, có đồng chí nào bít dùng mix Direct3D với DirectDraw hông ? (DirectDraw với OpenGL cũng được ?) Hu hu hu, khó wé....

CrazyBabe
05-01-2003, 19:27
Hic, tui có định hỏi cách dùng đâu ? Ý tôi là hỏi có ai bít dùng D3D device mà vẽ lên trên nền DDSurface không ý, hoặc là khởi động OpenGL rùi vẽ lên nền DDSurface cũng được. Tức là dùng cả Direct Draw lẫn Direct 3D vẽ lên một surface (hoặc DD+OGL) ý mà, bạn hỉu ko ? Hu hu khó wé... hay là ai bít cách khởi tạo D3D device trước rùi áp DirectDraw surface lên sau cũng được, help me... help me now...

Mach2
06-01-2003, 10:15
Sao bạn ko lưu toàn bộ khung hình OGL hay D3D chẳng hạn vào bộ nhớ rùi vẽ lại lên nền khác? Ko chậm đâu, nhanh lém mà?

CrazyBabe
13-01-2003, 15:52
Hic hic, Mach2 ui, chậm thì ko chậm, mà là siêu chậm >> chắc tại máy bạn nhanh nên bạn thấy thế thui, tui cũng nghĩ là nhanh nhưng mà đem xuống một chú máy Celeron 800 chạy thử >> tốc độ thảm hại. Mà mí các surface í mà, nếu mà là card màn hình support 3D hardware trước khi vẽ nó lock lại, mình muốn access đến nó thì phải unlock phức tạp lém, hu hu khó wá có ai giúp tui với...

Mach2
13-01-2003, 18:07
Ờ đúng là chậm quá, tôi vừa mới test trên cái máy cũ thấy tốc độ chậm thảm wé nếu như làm cái cách của tôi (lưu màn hình rùi vẽ lại ý mà)... Tôi chỉ mới vẽ lên TPicture thui nhưng mà nghĩ làm vậy cho DD chắc cũng ko khả quan.
Có phải vấn đề của bạn là tạo texture động ko? Tôi ko biết gì nhiều về D3D nên ko hiểu rõ câu hỏi của bạn lém...

FOXMAN
14-01-2003, 20:42
Nếu có điều kiện , bạn Crazy Babe hãy viết một bài về Direct 3D cho tụi này tham khảo , mong học hỏi ở bạn ! Tớ chỉ biết sử dụng Directdraw , input và sound thôi , chưa nghiên cứu sâu về 3D .

Thân

CrazyBabe
14-01-2003, 21:09
Há há, Mach2 hiểu bạn wá, đúng là mình đang có vấn đề với texture động (ví dụ như là giả lập một màn chiếu phim chẳng hạn) với lại muốn add thêm một số cái effect 2D vô nên mới cần làm cái này. Game mình đang vít base 2D nhưng muốn thêm một số hiệu ứng 3D vô mà lười kô muốn vít lại nên phải tìm cách "linh động" hì hì...
To Foxman: Hic, gần tết mình sẽ cố vít một bài, nhưng mà kĩ năng của mình non lắm, có gì mà sâu, hic hic, dạo này phải thi bận lém, hẹn bạn khoảng 24-25 nha.. bye bye...

Mach2
15-01-2003, 21:53
Tôi vừa viết lại một đoạn nhỏ nhỏ test texture động với OGL thì thấy chạy vẫn nhanh (trên 100 fps) với Celeron 566 TNT2 (800x600x16). Nhưng mà mới chỉ dám test thử cho texture 128x128 thui, lên một tí 256x256 thì giảm xuống còn 80fps. Texture động vẽ một object 3D khoảng 1000 vertices, 1500 faces. Nhưng mà thế thì vẫn nhanh tốt chứ nhỉ... Tôi nghĩ bạn giảm thử kích thước texture xuống xem sao, D3D thì phải nhanh hơn OGL một tí chứ nhỉ?

CrazyBabe
18-01-2003, 14:34
Hic, DX thì chưa chắc đã nhanh hơn OGL. Nì, bi giờ tui làm thế này: với DX7 trở xuống thì Direct3D Device dựng trực tiếp trên DirectDraw Surface thì không nói làm giề rùi. Với DX8, DX9 thì nó lại đẻ ra thằng Direct3D Surface, tui không bít convert sang DirectDraw Surface, nếu như queue nó với DirectDraw Surface thì tạch. Tui làm cách này: Lấy Direct3D buffer (Surface - mà tui chỉ dựng 1 buffer thui) rùi vẽ trực tiếp lên nó ( để tăng tốc một số thủ tục vẽ 2D ý mà - với cả game của tui 2D/3D hỗn hợp) thì lại chết ở chỗ là thực thi nó song song với các lệnh 3D hardware thì mấy cái lệnh 3D hardware đấy nó lại là multithread, có lúc nó vẽ sau nên đè lên mấy cái hình của tui vẽ (mặc dù được gọi trước), kô bít làm thế nào để check mấy cái lệnh đó đã vẽ xong chưa ? Hu hu cứu tui zới... Mà có ai bít thực hiện lệnh vẽ texture có transparent mà không cần phải áp kênh alpha vào kô, cứu tui đi....

datlq_53
16-12-2008, 04:35
các bác jup em voi, e kài VLTK mà khi vào chơi nó báo là dirextdraw falled, bg sửa hay làm thế nào để chơi đc hở các bác