Video hướng dẫn dùng Editor Ursina: Xem tại đây
Theo dõi kênh: Tại đây
Sẽ có cập nhật trong tương lai 🥰 !!!
Video Hướng Dẫn Chi Tiết Game Minecraft Ursina Phần 1: Xem tại đây
Video Hướng Dẫn Chi Tiết Game Minecraft Ursina Phần 2 (Đa người chơi) Mới: Xem tại đây
Website: Xem tại đây
Tài liệu sẽ được cập nhật định kì và thông báo trong group nên các bạn chú ý nhen .
Các khóa học khác xem tại : 8 Sync Dev
Hoặc liên hệ trực tiếp qua fb: Kevin Nguyễn để được hỗ trợ
from ursina import *
from ursina.editor.level_editor import *from ursina import *: Nhập toàn bộ các module và class từ thư việnUrsina.from ursina.editor.level_editor import *: Nhập toàn bộ module liên quan đến trình chỉnh sửa cấp độ từUrsina.
def main():
app = Ursina(vsync=False)def main(): Đây là hàm chính, nơi mọi thứ bắt đầu.app = Ursina(vsync=False): Tạo một ứng dụngUrsinavớivsynctắt.vsync(Vertical Synchronization) giúp đồng bộ hóa tốc độ khung hình của ứng dụng với tốc độ làm mới của màn hình, nhưng trong trường hợp này, nó bị tắt để tăng hiệu suất.
class Tree(Entity):
def __init__(self, **kwargs):
super().__init__(**kwargs)
self.model = 'cube'
self.color = color.brown
self.top = Entity(name='tree_top', parent=self, y=1.5, model='cube', color=color.green, selectable=True)
LEVEL_EDITOR.entities.append(self.top)class Tree(Entity): Khai báo lớpTreekế thừa từEntity, là một đối tượng cơ bản trong Ursina.def __init__(self, **kwargs): Hàm khởi tạo của lớp, cho phép truyền các tham số linh hoạt.super().__init__(**kwargs): Gọi hàm khởi tạo của lớp cha (Entity).self.model = 'cube': Thiết lập mô hình hình học của đối tượng là một hình lập phương.self.color = color.brown: Đặt màu của thân cây là màu nâu.self.top = Entity(...): Tạo phần ngọn cây với màu xanh, đặt nó là con của đối tượngTree.LEVEL_EDITOR.entities.append(self.top): Thêm phần ngọn cây (tree_top) vào danh sách các thực thể trong trình chỉnh sửa cấp độ.
level_editor = LevelEditor()level_editor = LevelEditor(): Tạo một đối tượng trình chỉnh sửa cấp độ (LevelEditor), cho phép người dùng tạo và chỉnh sửa các đối tượng trong không gian 3D.
from ursina.prefabs.first_person_controller import FirstPersonController
level_editor.class_menu.available_classes |= {'WhiteCube': WhiteCube, 'EditorCamera':EditorCamera, 'FirstPersonController':FirstPersonController}from ursina.prefabs.first_person_controller import FirstPersonController: Nhập lớpFirstPersonController, cung cấp khả năng di chuyển góc nhìn như trong các game bắn súng góc nhìn thứ nhất.level_editor.class_menu.available_classes |= ...: Thêm các lớp (WhiteCube,EditorCamera,FirstPersonController) vào menu lớp của trình chỉnh sửa cấp độ. Người dùng có thể chọn và thêm các đối tượng này vào cảnh trong trình chỉnh sửa.
from ursina.shaders import ssao_shader
window.borderless=False
app.run()from ursina.shaders import ssao_shader: Nhập shader SSAO (Screen Space Ambient Occlusion) để tạo hiệu ứng bóng tối dựa trên không gian màn hình, giúp cải thiện chất lượng hình ảnh.window.borderless=False: Thiết lập cửa sổ không viền (fullscreen không viền), cho phép người dùng di chuyển và thay đổi kích thước cửa sổ.app.run(): Chạy ứng dụngUrsina.
if __name__ == '__main__':
main()if __name__ == '__main__':: Kiểm tra xem file này có phải là file chính được thực thi không. Nếu đúng, hàmmain()sẽ được gọi để bắt đầu chương trình.
