njin
Engine 2D gọn nhẹ để tự tay làm game theo ý mình. Vibe coding cũng ổn luôn
Toggle main menu visibility
Loading...
Searching...
No Matches
njin_prefab.h
1
#pragma once
2
#include "_comps.h"
3
#include "_types.h"
4
#include <entt/entity/fwd.hpp>
5
6
namespace
njin {
7
struct
context;
8
11
17
using
prefab_fnc
= void (*)(context &ctx, entt::entity entity);
18
24
struct
prefab_desc
{
25
const
char
*
name
=
nullptr
;
26
prefab_fnc
build
=
nullptr
;
29
bool
scene_owned
=
true
;
30
};
31
36
prefab_handle
prefab_register
(context &ctx,
const
prefab_desc
&desc);
37
42
prefab_handle
prefab_find
(
const
context &ctx,
const
char
*name);
43
57
entt::entity
prefab_spawn
(context &ctx,
prefab_handle
prefab,
58
const
transform
&at = {});
59
65
entt::entity
prefab_spawn
(context &ctx,
const
char
*name,
66
const
transform
&at = {});
67
77
entt::entity
prefab_spawn_child
(context &ctx,
prefab_handle
prefab,
78
entt::entity parent,
79
const
transform
&local = {});
81
}
// namespace njin
njin::prefab_find
prefab_handle prefab_find(const context &ctx, const char *name)
Tìm prefab theo tên.
njin::prefab_register
prefab_handle prefab_register(context &ctx, const prefab_desc &desc)
Đăng ký một prefab.
njin::prefab_fnc
void(*)(context &ctx, entt::entity entity) prefab_fnc
Hàm dựng một prefab: gắn component vào entity vừa tạo.
Definition
njin_prefab.h:17
njin::prefab_spawn
entt::entity prefab_spawn(context &ctx, prefab_handle prefab, const transform &at={})
Tạo một entity từ prefab, đặt tại at.
njin::prefab_spawn_child
entt::entity prefab_spawn_child(context &ctx, prefab_handle prefab, entt::entity parent, const transform &local={})
Tạo một entity từ prefab và gắn nó làm con của parent.
njin::prefab_desc
Mô tả một prefab, dùng với prefab_register().
Definition
njin_prefab.h:24
njin::prefab_desc::build
prefab_fnc build
Hàm dựng.
Definition
njin_prefab.h:26
njin::prefab_desc::scene_owned
bool scene_owned
Gắn entity vào scene đang chạy lúc spawn (njin::scene_owned), để nó tự mất khi rời scene.
Definition
njin_prefab.h:29
njin::prefab_desc::name
const char * name
Tên prefab, phải là duy nhất.
Definition
njin_prefab.h:25
njin::prefab_handle
Định danh của một prefab, tạo bởi prefab_register().
Definition
_types.h:314
njin::transform
Vị trí, góc xoay và tỉ lệ của một entity trong thế giới.
Definition
_comps.h:14
njin_prefab.h
Được biên soạn bởi
1.18.0