Game engine development, this has been deleted by me

this has been deleted by me

8 Likes

Các bạn có thể trao đổi ở đây hoặc qua facebook post: https://www.facebook.com/ntmanh.net/posts/374149566395074

1 Like

Có vẻ topic hơi phức tạp so với các bạn DNH nên không thấy ý kiến gì :smile: chắc sắp tới bỏ forum tìm chỗ khác quá.

1 Like

người tiên phong bao giờ cũng vất vả hơn bạn ơi, bạn cứ làm đi, nếu nó thực sự hay ho thì sẽ thu hút được nhiều người. Chúc bạn thành công :slight_smile:

3 Likes

Taken from my personal facebook, want to share with you

3 Likes

Bạn có thể đi sâu về chủ đề mesh format này được ko? Ứng dụng của nó ntn khi làm đồ họa?

Theo mình bạn tập trung quất vào 1 chủ đề nào đó thật sâu, dàn nhiều ae nuốt ko hết. Trong game mình nghĩ là đồ họa.

2 Likes

Có thể mình sẽ livestream quá trình viết tính năng mới.

Và làm những video ngắn để phân tích những kỹ thuật lập trình áp dụng vào game engine.

4 Likes

Nhân đây bạn Mạnh cho mình hỏi việc thường xuyên phải re-render khoảng 20k -> 40k objects có nặng nề ko?

1 Like

Tùy theo độ chi tiết của object đó nhé bạn, thường tính theo số lượng triangles (tris) thay vì objects. Một object sẽ có một số lượng tris nhất định.

Thường thì bạn tính theo vùng nhìn thôi. Tức 20k - 40k objects đó là toàn bộ nhưng phải có thuật toán cắt bỏ bớt, chỉ render những vùng người ta nhìn thấy trong số object đó.

1 Like

Mình chủ yếu là các lines 2D. Vùng nhìn tối đa của mình lên tới 40k objects, 1 bước pan chuột có thể thay đổi tới hơn 10k. Việc này quả là nightmare với java :fearful:

1 Like

Vậy thì có thể bạn làm sai cách rồi. Bạn có thể chuyển sang OpenGL java hoặc thư viện nào đó để sử dụng GPU và vẽ 2D như game.

1 Like

Framework JavaFx có prism, nó wrap OpenGL. Việc chết tiệt là bất cứ modify nào tới scene graph nodes thì phải dùng main thread (việc tính toán có thể dùng background threads). Dù có tính nhanh cỡ nào thì khi thay đổi 10k objects thì mình cũng bị nghẽn main thread và block mọi tương tác khác với user khi thao tác nhanh.
Mình xem bản vẽ trên cái Iphone nó vừa render vừa tương tác gesture vô tư được. Giống như nó dùng được multi-thread trong tương tác GUI.

Phương án chia nhỏ quá trình present objects, hủy ngang nếu có tương tác mới từ user có thường đượng dùng ko bạn? Mình ko có kn nên cũng ko biết các real developer làm ntn.

1 Like

bỏ Java sang code C++ chứ còn gì nữa

3 Likes

Bạn đang làm ứng dụng hay game vậy? Game thì đừng dùng JavaFX, thử cái https://www.lwjgl.org/ đi

1 Like

Hi Manh.
Làm thế nào để tham ra cùng mọi ngừowi ?

1 Like

Mình cũng định dứt áo tìm tình mới mấy lần nhưng Java cũng có những lợi thế phù hợp và hấp dẫn quá.
Lý do mình bập JavaFx là khi lướt qua nhìn thấy những thứ này: Table, listview, treeview, databinding, events - listeners, database, forms, concurrency, scene graph dễ dàng. Đều là những miếng mình cần và cảm thấy ngon ăn. Lúc đầu bập vào cũng lo lo tốc độ và thế là đến giờ hóc thật. :disappointed_relieved:

C++ thì cái nào sẽ cho mình những lợi thế tương đương trên bạn? Mình cũng đang định tìm đường thoát xác dần dần ở C++.

1 Like

Cảm ơn bạn. Mình làm ứng dụng nhưng bị bí ở tốc độ UI.
Xin lỗi bạn vì off-topics tí nha. Mình vẫn khao khát tốc độ của ứng dụng C++ mà chưa quyết định đc.

1 Like

Hi Code Đơ.
Bạn có thể tìm hiểu về JNI nó cho phép bạn gọi các api viết bằng C/C++ trọng java.

2 Likes

for fun: ngày xưa khi chưa biết gì về lập trình, mình thường nghĩ lập trình game kiểu như lắp ráp module và vẽ hoạt xong ngồi ráp lại, lập kịch bản hành động xong ngồi test lại; kiểu đơn giản như ĐANG GIỠN :grin:

2 Likes

OFF-TOPIC

Những thứ này bạn có thể dựa hết vào Qt nhé.
Tuy nhiên do là C++ nên move từ java sang có lẽ sẽ hơi sock về coding style và số dòng code của Qt khi ra app.

6 Likes
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?