Trang 1 / 4 1234 LastLast
Hiển thị kết quả từ 1 đến 10 / 35
  1. #1
    Tham gia
    13-09-2002
    Location
    Hell
    Bài viết
    1,243
    Like
    0
    Thanked 1 Time in 1 Post

    [NEWS] Film 3D 64 KB, 800x600, 15 phút, có nhạc, vô cùng đặc sắc với ratio 30000:1

    Bà con down về xem và sốc...
    Ai đã từng làm film 3D chắc hiểu vì sao sốc, sốc wá, film cực đẹp, nét, ko có dấu hiệu nén, chỉ có 64 KB, 15 phút, âm thanh tuyệt hảo......
    Nhìn chung là ...ko thể hiểu nổi cái wái gì đang xảy ra........
    Attached Files
    Quote Quote

  2. #2
    Tham gia
    17-09-2002
    Location
    SMA
    Bài viết
    749
    Like
    0
    Thanked 3 Times in 3 Posts
    Hi hì, GL114 đặt tựa ghê wé.
    Nói cho chính xác thì cái này ko phải là film mà là demo. Khác biệt ở chỗ một bên là render sẵn (film) một bên là render realtime. Bởi vì render realtime cho nên mới nhỏ và nét như thế (render realtime thì có nén làm gì đâu cho nên hình nét và rõ kinh, phân giải nào cũng lên vô tư, chỉ tuỳ thuộc card đồ họa xịn thui).
    Lần đầu tiên mình xem demo loại này cũng shock mạnh. Ko ai ngờ 64k mà tạo nên đủ thứ như thế, hình ảnh, âm thanh, hiệu ứng đẹp ko ngờ.
    Cái mà GL114 đưa lên là demo thứ 8 (fr08) của the farbrausch, một nhóm chuyên làm demo realtime để quảng cáo, trình diễn. Đây cũng là demo đạt giải nhất của cuộc thi symponium party 2000 ở phần 64k demo. Loại thi này đòi hỏi người ta phải viết một trình demo trình diễn, giới hạn trong kích thước 64k. Ngôn ngữ thoải mái. Thoạt đầu mình cũng nghĩ 64k thì làm wái gì mà tạo được cái gì nên hồn, nhưng mà sau khi xem xong thì tá hoả. Người ta đi trước mình xa wá.
    fr08 được viết bằng VC++, sử dụng DirectX làm thư viện render. Nói cho thật lòng thì demo về thứ hai đẹp hơn nhiều (7thHeaven), làm raytrace đẹp kinh người, chạy được cả trên DOS do viết bằng Assemble. Mình đợi mãi mà ko thấy nhóm này ra tiếp trong khi the farbrausch thì cứ liên tục xuất xưởng demo mới. Demo đẹp nhất của nhóm này là poem to a horse (fr22).
    Kỹ thuật làm demo cũng ko có gì là kinh khủng lém, tuy nhiên nghiêng về lập trình đồ hoạ hơn là mô hình 3D. Nếu bạn nào muốn biết cơ chế các demo này làm như thế nào thì mình sẽ giải thích sau. (giải thích cơ chế thôi, mình hiểu cách làm, tuy nhiên làm được một cái như thế thì ko dám nghĩ đến).
    Tiện thể gửi 7thHeaven lên luôn, mình đã gửi lên một lần lâu lém rùi mà ko thấy ai nói gì hết cho nên gửi lại.
    Attached Files

  3. #3
    Tham gia
    27-10-2002
    Location
    HCM
    Bài viết
    365
    Like
    0
    Thanked 1 Time in 1 Post
    Wow, tuyệt thật ! Cám ơn Gótlắc với Mach2, trùi ui, mình phải học thêm nữa cho bằng người ta .. Mô phập !

  4. #4
    Tham gia
    02-12-2002
    Bài viết
    155
    Like
    0
    Thanked 0 Times in 0 Posts
    Đẹp quá bạn down ở đâu vậy.....

  5. #5
    Tham gia
    13-09-2002
    Location
    Hell
    Bài viết
    1,243
    Like
    0
    Thanked 1 Time in 1 Post
    Từ từ, từ từ ba match, có thể nói rõ hơn được ko???
    Mình cũng nghĩ đây là viết code chứ ko thể là xuất film được, khi đọc cái dòng thông báo film render của nó, đã thấy láo rồi
    Demo H7 đẹp lắm, thật ko ngờ chỉ có 64 KB....wái thật, chỉ nội map thôi đã chết rồi....
    Match có thể nói thêm về kỹ thuật này được ko, cứ cho là viết các eff, model...từ code, nhưng map thì fải lấy từ ngoài vào chứ, làm sao còn có 64 KB nhỉ, như trong demo đầu, có vô số map cơ mà....

  6. #6
    Tham gia
    21-11-2002
    Location
    Hồ Chí Minh
    Bài viết
    3,422
    Like
    17
    Thanked 206 Times in 121 Posts
    ừa ừa!lạ thật?down về sao thấy đẹp thía!đẹp kinh khủng,sao người ta làm được hay wé

  7. #7
    Tham gia
    13-09-2002
    Location
    Hell
    Bài viết
    1,243
    Like
    0
    Thanked 1 Time in 1 Post
    Lại còn fải nhét sound vào nữa chứ, lạ wá....

  8. #8
    Tham gia
    27-10-2002
    Location
    HCM
    Bài viết
    365
    Like
    0
    Thanked 1 Time in 1 Post
    Sound chắc phải ở dạng MIDI rùi, chơi vòng nhiều lần.
    Texture chỉ ở dạng trắng đen, màu sắc là do mix với diffuse color của object. Để ý kỹ thì chỉ có 5,6,7 texture thôi ( mây, đá, mặt người, bề mặt mặt trăng ), do texture lặp và trộn bằng mã nên trông đa dạng.
    Tất cả vật thể đều được vẽ bằng thuật toán ( chúng chỉ là những hình cầu, trụ ..v.v.. Hình người chạy lúc đầu chỉ là một map phẳng
    Nhưng tất cả những thứ này ( kiêm luôn renderer engine ) mà chỉ 64K, phục !

  9. #9
    Tham gia
    17-09-2002
    Location
    SMA
    Bài viết
    749
    Like
    0
    Thanked 3 Times in 3 Posts
    Thì viết code mà GL114, nên làm cái gì mà chẳng được.
    Mình tóm gọn kỹ thuật làm demo như sau: hiện nay có 2 trường phái chính như sau: Một: tìm cách tối ưu toàn bộ data dùng trong demo (model+texture+music+scene data) càng nhiều càng tốt, cái này điển hình là demo 7thHeaven. Hai: Sinh toàn bộ các dữ liệu model+texture trong demo, music và scene data (dữ liệu scene, cho biết lúc nào vẽ cái gì, làm cái gì, etc...) và tìm cách nén tối đa, loại này phổ biến hiện nay, cái fr08 GL114 gởi lên là ví dụ đó đó.
    Music: Cái dễ nói trước, music thì dùng nhạc MIDI (file *.mid), loại âm thanh này lưu nốt nhạc nên nhỏ xíu, bạn tìm mấy file của Windows có sẵn mà xem, vài kb mà nghe được khá lâu, giống như bạn chơi organ, chỉ lưu nốt nhạc và giai điệu (rythm) có kèm theo gam... Bạn nào chơi nhạc thì biết. Nén tối đa, khoảng 2~5k cho một bản nhạc nho nhỏ.
    Scene Data: Cái này thì khó giải thích, nhưng mà bạn nghĩ thử xem, demo thường được viết bằng các trình đồ hoạ, người lập trình sẽ viết vài function và procedure, sau đó dùng các hàm này như script để vẽ scene. Nói đơn giản, scene data được ém vào ngay trong chương trình. Cái này khi dịch sẽ thành mã máy, nhanh vô cùng, nhỏ vô cùng, ko cần tối ưu gì cho mệt.
    Model: Như đã nói ở trên, có 2 trường phái ém, trường phái đầu tiên tìm cách mô hình một hình thể càng đơn giản càng tốt (để tiết kiệm đó mờ, giả sử một model khoảng 500 poly thì cần ~750 vertex, tính ra khoảng 750x3x2(toạ độ mỗi vertex cần 3 thông số, mỗi thông số là số thực cần 2 bytes để lưu), như vậy mất khoảng 4k cho một model như vậy, chưa kể texture và normal vector, nhân lên ta có 12k là ít nhất cho một texture. Waste 12k is not an option!!! Vì vậy, các demo ko dùng một model đầy đủ nào hết, toàn bộ là model thu gọn (giả sử một model hình viên thuốc chỉ bao gồm dữ liệu chiều cao viên thuốc, bán kính bo, đường kính và quan trọng nhất là mã để sinh các vertex của viên thuốc đó, 7thHeaven dùng cách này để lưu các model, nếu bạn để ý kỹ, tất cả các model của demo này đều dùng các primitive đơn giản và thực hiện toán tử Boolean lên nó, đối với một engine raytrace, việc render mí cái này là chuyện nhỏ (7thHeaven viết engine raytrace bằng Assemble!!!). Đối với fr08 thì mọi chuyện phức tạp hơn, họ dùng các phép toán hình học tự nhiên để sinh toàn bộ model (bạn có thể ko tin điều này, nhưng đó là sự thực, các model của the farbrausch chỉ lưu một số thông tin rất ít (như các toà nhà, vật thể cụ thể... mới cần lưu mà thôi). Một số model trong các demo của the farbrausch (con két, đèn đường…) nhìn rất đơn giản và đẹp tuy theo họ chỉ nói là khoảng vài chục vertex mỗi model, tức khoảng 50 poly cho mỗi model, một số model đơn giản có thể đơn giản bằng primitive cho tiện. Tuy nhiên điểm hay nhất của the farbrausch là sinh các model recursion, hay các model fractal, tức các mô hình tự định nghĩa và mô hình gồ ghề (ví dụ cụ thể như cây cối-mô hình tự định nghĩa, và terrain-mô hình gồ ghề). Các mô hình này được xây dựng thuần tuý toán học nên chẳng cần lưu model làm gì hết. Tóm lại, đối với các demo, các model thường được tối ưu hết cỡ, do đó theo ý tôi chiếm đến 8kb là hết cỡ.
    Texture: Phần này do GL114 hỏi, và đương nhiên là phần dễ gây thắc mắc nhất. Mình cũng chia thành 2 trường phái như trên, đó là cách dùng texture có sẵn được tối ưu và cách dùng các texture tự sinh bằng các hàm toán học. Texture tối ưu là cách làm của 7thHeaven, họ tối ưu tất cả các texture có trong demo (kích thước texture 128x128x8bit). Bạn thử tìm một hình nào đó, rescale nó về kích thước này, giảm quality xuống còn 30-60% thì kích thước chỉ còn 1-2kb. 7thHeaven dùng cách này để lưu khoảng chừng 10 texture vào chương trình (bạn thử đếm xem họ xài mí texture?). Chỉ có họ mới dám làm cách này bởi vì engine render của họ là tự xây dựng nên mã khá nhỏ, dư nhiều chỗ trống. Nhưng cũng phải công nhận là họ tối ưu tốt thật, hình người liên hoàn xuất hiện ở đầu demo khoảng 8 hình mà cũng chỉ có chưa đến 2kb mà thôi. the farbrausch thì khác, họ tự sinh texture. Bạn để ý thấy đoạn loading ở đầu demo là họ đang sinh texture đó, lúc đó mà chặn thread coi thì sẽ thấy demo này đang ăn khoảng vài chục MB bộ nhớ, đó là texture được sinh ra đó. Hiện nay giải thuật sinh texture phổ biến nhất là kỹ thuật Perlin Noise, dùng các nhiễu để tạo các hình ảnh ngẫu nhiên khá tốt. Bạn có biết khói, marble và wood texture trong 3dsmax là dùng Perlin Noise để tạo không? Vì vậy, nếu bạn có thể làm được texture gì với 3 chức năng đó của 3dsmax thì các demo cũng làm được. Hồi đầu mình cũng hơi nghi ngờ khả năng của nó nhưng cho đến lúc làm được vài cái Perlin Noise thì mới hiểu rõ. Perlin Noise ngoài tạo texture còn có thể làm được đủ thứ trên đời, như mô phỏng các hiện tượng ngẫu nhiên hay mô phỏng ứng xử. Bạn có thể lên trang web của Ken Perlin để xem một số áp dụng của ông (bạn đã thấy 3D trong trình duyệt Web chưa? Nếu chưa thì nên vào xem thử. Và tất cả các model và texture trong trang web này hầu hết được tự sinh!!!). Đây là link http://mrl.nyu.edu/~perlin/
    Hiện nay, the farbrausch đang đứng đầu danh sách 64kdemo bằng 3 giải nhất liên tiếp trong 3 năm. Trong số các demo của nhóm này, demo poem to a horse là demo mình thích nhất, đây có thể xem là một demo trình diễn các model và texture tự sinh đẹp và hấp dẫn nhất. Các hình ảnh render giả raytrace y như thật. Tất cả cũng chỉ trong 64k. Mình gởi kèm cho các bạn xem thử.
    Nói tóm lại, mình cảm thấy đã giải thích khá chi tiết, tuy có hơi khó hiểu. Thế giới demo đồ hoạ là một thế giới vô cùng hấp dẫn (đối với mình). Bạn nào có hứng thú thì trao đổi với mình thêm các kỹ thuật lập trình đồ hoạ, như một số hiệu ứng trong các demo trên đây.
    Attached Files

  10. #10
    Tham gia
    17-09-2002
    Location
    SMA
    Bài viết
    749
    Like
    0
    Thanked 3 Times in 3 Posts
    hà hà, Shin nhìn ra được như vậy hay wá hay wá!!!

Trang 1 / 4 1234 LastLast

Bookmarks

Quy định

  • Bạn không thể tạo chủ đề mới
  • Bạn không thể trả lời bài viết
  • Bạn không thể gửi file đính kèm
  • Bạn không thể sửa bài viết của mình
  •