Files
esengine/docs/beginner-tutorials.md

188 lines
8.0 KiB
Markdown
Raw Normal View History

2025-06-10 13:12:14 +08:00
<EFBFBD><EFBFBD># <00>eKbYe z<>[tecWS
"kΏO(uECSFh<46>g<01>,gcWS:N<>eKb<4B>c<EFBFBD>O<EFBFBD>N<EFBFBD>[te<74>vf[`N_ <0C><>N<EFBFBD>W@x<>i<EFBFBD>_0Rؚ<52>~<7E>^(u <0C>.^`O<EFBFBD>_<1F><>c<EFBFBD>cECSFh<46>g_<>S8nb0
## =<3D><><EFBFBD> f[`N_
### ,{N6<4E><36>k<1A><>W@xeQ<EFBFBD><EFBFBD><08><>_<EFBFBD><5F> <09>
#### 1. [<00>_<1F>_<>Y](getting-started.md)
- <> **5R<><52>eQ<65><51>** - R<>^`O<>v,{N*NECS8nb
- =<3D><><EFBFBD> **<00>s<EFBFBD>X-d<>^** - <00><>TM<54>nFh<46>g
- <> **,{N*N8nb** - <00>[te<74>v:y<>O8nb
- =<3D>'<27> **<00>W@xAPI** - 8h<38>_<EFBFBD>R<EFBFBD><52><EFBFBD>N<EFBFBD>~
#### 2. [8h<38>_<EFBFBD>i<EFBFBD>_](core-concepts.md)
- <<3C><><EFBFBD><0F> **ECS<00>g<EFBFBD>g** - <00>[SO0<>~<7E>N0<>|<7C>~<7E>vsQ<73>|
- =<3D><><EFBFBD> **API<00>S<03>** - 8h<38>_{|<7C>T<EFBFBD>e<EFBFBD>l
- <> **gsO<73>[<5B><>** - <00>N<03><>T<EFBFBD><54><EFBFBD><EFBFBD>!j_
- =<3D> <0A> **<00>g<EFBFBD><67><EFBFBD>|<7C>~** - <00>YUOؚHe<48>g~b<>[SO
#### 3. [<00>i<EFBFBD>_<EFBFBD><5F><EFBFBD><EFBFBD>](concepts-explained.md) P+<0F>**<00>eKb<4B>_<EFBFBD><5F>**
- ><3E><14> **<1A><>O<EFBFBD><4F>ʑ** - (u<>{US<55><53><00><><EFBFBD>ʑ YBg<42>i<EFBFBD>_
- =<3D><><EFBFBD> **'`<60><>OS<>b/g** - <00>~<7E>N"}_0Archetype0<0F>h<><68>
- <> **"}_ <09><>bcWS** - UO<55>eO(u<>T ^"}_vsMO<4D>V"}_
- <> **<00>^(u:Wof** - N T8nb{|<7C>W<EFBFBD>v <09><>b<EFBFBD>^<5E><>
### ,{<7B>N6<4E><36>k<1A>8h<38>_<EFBFBD>R<EFBFBD><52><EFBFBD>c<EFBFBD>c
#### 4. [<00>[SO<53>{tcWS](entity-guide.md)
- <> **<00>[SO<53>W@x** - <00>NHN/f<>[SO <0C><>YUOR<>^<5E>TO(u
- <<3C><><EFBFBD><0F> **h~{<7B>|<7C>~** - <00>[SOR{|<7C>T<EFBFBD>g~b
- =<3D><04> **u}ThTg** - <00>[SO<53>vR<>^0<>f<EFBFBD>e0<00><>k
- =<3D><><EFBFBD> **<00>{US:y<>O** - <00>s<EFBFBD>[0Le<4C>N0S<30>wQ<77>[SO
#### 5. [<00>~<7E>N<EFBFBD><4E><EFBFBD><EFBFBD>gsO<73>[<5B><>](component-design-guide.md) P+<0F>**<00><><EFBFBD><EFBFBD><EFBFBD>_<EFBFBD><5F>**
- ><3E><><EFBFBD> **<00>~<7E>N<EFBFBD><4E><EFBFBD><EFBFBD><EFBFBD>SR** - USNL<4E>#<23>0penc:N;N
- =<3D><><EFBFBD> **<00>~<7E>N{|<7C>W** - penc<6E>~<7E>N0h<><68><EFBFBD>~<7E>N0L<30>:N<>~<7E>N
- =<3D><17> **<00>~<7E>N<1A><>O** - <00>YUO<55><4F><EFBFBD>~<7E>NOS T<>]\O
- <> **'`<60><>OS** - <00>[a<>`l<EFBFBD>Tpenc'}<7D>Q'`
- ><3E><><EFBFBD> **KmՋ<6D>T<03>Ջ** - <00>YUOKmՋ`O<>v<EFBFBD>~<7E>N
#### 6. [<00>|<7C>~<7E><><EFBFBD><EFBFBD>cWS](system-guide.md) P+<0F>**;<3B><><EFBFBD><EFBFBD>_<EFBFBD><5F>**
- <00>&<0F> **<00>V<EFBFBD>y<EFBFBD>|<7C>~{|<7C>W** - EntitySystem0ProcessingSystem0IntervalSystem0PassiveSystem
- <> **O(u:Wof** - <00>NHN<48>eP(u<>T<EFBFBD>y<EFBFBD>|<7C>~
- =<3D><><EFBFBD> **gbL<62>z<EFBFBD><7A>^** - <00>|<7C>~<7E><><EFBFBD>v<EFBFBD>OV<4F>sQ<73>|
- =<3D><04> **<00>|<7C>~<1A><>O** - <00>N<EFBFBD>Nq<4E><71>R<EFBFBD>v~g&<26>T<><54><EFBFBD><EFBFBD>
- <> **'`<60><>OS** - ybϑYt<>T<EFBFBD><54><EFBFBD>s<EFBFBD>c6R
### ,{ N6<4E><36>k<1A>ؚ<EFBFBD>~<7E>R<EFBFBD><52><EFBFBD>^(u
#### 7. [:Wof<6F>{tcWS](scene-management-guide.md)
- <> **:Wof<6F>i<EFBFBD>_** - <00>NHN/f:Wof <0C><>YUO<55>~<7E>~8nbNLu
- =<3D><04> **:WofRbc** - ܃US08nb0<>f\P:Wof<6F>vRbc
- <> **penc O<12>** - :Wof<6F><66><EFBFBD>YUO O<12>penc
- <> **<00>[E<><45>^(u** - <00>[te<74>v8nb:Wof<6F><66><EFBFBD><EFBFBD>
- =<3D><><EFBFBD> **'`<60><>OS** - :Wof<6F>~+R<>v'`<EFBFBD><EFBFBD><EFBFBD>v<EFBFBD>c
#### 8. [<00>[<5B>ehV<68>|<7C>~cWS](timer-guide.md)
- <00># **<00>[<5B>ehV<68>W@x** - <00>^ߏgbL<62>0͑ YgbL<62>
- =<3D><17> **<00>[<5B>ehV<68><56>** - z<><7A>^gbL<62>Y*N<>N<EFBFBD>R
- <> **ag<61>N<EFBFBD>[<5B>ehV** - I{<7B>_yr<79>[ag<61>N<EFBFBD>n<EFBFBD><6E>
- <00>#<0F> **<00>S<EFBFBD>f\P<>[<5B>ehV** - 8nb<>f\P<>R<EFBFBD><52>
- <> **8nb<>^(u** - Buff<00>|<7C>~0<>b<EFBFBD><62><EFBFBD>QtS0sQaSP<53><50>e
#### 9. [<00>g<EFBFBD><67><EFBFBD>|<7C>~O(u](query-system-usage.md)
- =<3D> <0A> **<00>W@x<EFBFBD>g<EFBFBD><EFBFBD>** - c<>~<7E>N<EFBFBD>g~b<>[SO
- <> ** YBg<42>g<EFBFBD><67>** - <00>~Tag<61>N<EFBFBD>T<EFBFBD>cd<63>ag<61>N
- =<3D><><EFBFBD> **'`<60><><EFBFBD>v<EFBFBD>c** - <00>g<EFBFBD><67>'`<EFBFBD><EFBFBD><EFBFBD>~<7E><>
- <> **OS<>b<EFBFBD>]** - <00><63>g<EFBFBD><67>He<48>s
#### 10. [<00>N<EFBFBD>N<EFBFBD>|<7C>~:y<>O](event-system-example.md)
- =<3D><><EFBFBD> **<00>N<EFBFBD>N<EFBFBD>W@x** - <00>S<01><>T<EFBFBD>v,T<>N<EFBFBD>N
- <> **8nb<>N<EFBFBD>N** - <00>s<EFBFBD>[<5B><>eQ0<>x<EFBFBD>d0RpeI{
- =<3D><04> **<00>|<7C>~<7E><>&<26>** - (u<>N<EFBFBD>N<EFBFBD>[<5B>s<EFBFBD>|<7C>~<7E><><1A><>O
- =<3D><><EFBFBD> **<00>N<EFBFBD>N<EFBFBD>~<7E><>** - <00>v<EFBFBD>c<EFBFBD>N<EFBFBD>N<EFBFBD>|<7C>~'`<60><>
### ,{<7B>V6<56><36>k<1A><>[b<>^(u
#### 11. [<00>[SO<53>{thVؚ<56>~<7E>R<EFBFBD><52>](entity-manager-example.md)
- <<3C><><EFBFBD> **ybϑ<62>d\O** - ؚHeR<>^<5E>T<EFBFBD>{t'Yϑ<59>[SO
- =<3D> <0A> **ؚ<>~<7E>g<EFBFBD><67>** - EntityQueryBuilder<00>vO(u
- =<3D><><EFBFBD> **'`<60><><EFBFBD>v<EFBFBD>c** - <00>[SO<53>{t'`<EFBFBD><EFBFBD><EFBFBD>~<7E><>
- <> **<00>[E<>Hh<48>O** - 9_U^8nb0RTS8nb<>v<EFBFBD>[SO<53>{t
#### 12. [<00>^(uHh<48>T](use-cases.md)
- <> ** N T8nb{|<7C>W** - O<><4F>8nb0<>R\O8nb0V{eu8nb
- <> **wQSO<53>[<5B>s** - <00>[te<74>v<EFBFBD>Nx:y<>O
- =<3D><><EFBFBD> **'`<60><>R<>g** - T<>y<EFBFBD>^(u<>v'`<EFBFBD><EFBFBD>yr<EFBFBD>p
- <> **<00><><EFBFBD><EFBFBD>`<60><>** - <00>YUO <09><>bT<02><>v<EFBFBD>g<EFBFBD>g
### ,{<7B>N6<4E><36>k<1A>'`<60><>OS
#### 13. ['`<60><><EFBFBD>W<EFBFBD>QKmՋ](performance.md)
- =<3D><><EFBFBD> **<00>W<EFBFBD>Qpenc** - Fh<46>g'`<60><>h<EFBFBD><68>s
- =<3D><><EFBFBD> **<00>[<5B>kR<>g** - NvQ<76>NFh<46>g<EFBFBD>v<EFBFBD>k<EFBFBD><6B>
- <> **OS<>^<5E><>** - <00><><EFBFBD>[ N Tĉ!j<>vOSV{eu
- =<3D><><EFBFBD> **'`<60><><EFBFBD>h<EFBFBD>gnUS** - nx<6E>OgsO'`<EFBFBD><EFBFBD><EFBFBD>v<EFBFBD><EFBFBD><EFBFBD>p
#### 14. ['`<60><>OS<>b/g](performance-optimization.md)
- <> **8h<38>_OS** - <00>~<7E>N"}_0Archetype0<0F>h<><68>
- <> **<00>QX[OS** - <00>[a<>`l0penc'}<7D>Q'`
- =<3D><04> **ybϑYt** - <00>Q\US!k<>d\O_<00>
- =<3D><><EFBFBD> **<00>v<EFBFBD>c<EFBFBD>]wQ** - '`<60><>R<>g<EFBFBD>T<03>Ջ
## <> <00>cP<63>f[`Nz<4E><7A>^
### <02>T<>[hQ<68>eKb<08>,{N!k<>c<EFBFBD><63>ECS <09>
```
1. <00>_<1F>_<>Y <00>! 2. <00>i<EFBFBD>_<EFBFBD><5F><EFBFBD><EFBFBD> <00>! 3. 8h<38>_<EFBFBD>i<EFBFBD>_ <00>! 4. <00>[SO<53>{tcWS
<00>! 5. <00>~<7E>N<EFBFBD><4E><EFBFBD><EFBFBD>cWS <00>! 6. <00>|<7C>~<7E><><EFBFBD><EFBFBD>cWS <00>! 7. <00>^(uHh<48>O
```
### <02>T g8nb_<>S<EFBFBD>~<7E><><EFBFBD>v_<>S<05>
```
1. <00>_<1F>_<>Y <00>! 2. 8h<38>_<EFBFBD>i<EFBFBD>_ <00>! 3. <00>~<7E>N<EFBFBD><4E><EFBFBD><EFBFBD>cWS <00>! 4. <00>|<7C>~<7E><><EFBFBD><EFBFBD>cWS
<00>! 5. :Wof<6F>{tcWS <00>! 6. '`<60><>OS<>b/g
```
### <02>T<><54>Blؚ'`<60><><EFBFBD>v_<>S<05>
```
1. <00>_<1F>_<>Y <00>! 2. <00>i<EFBFBD>_<EFBFBD><5F><EFBFBD><EFBFBD>(͑<>p w'`<60><>OS) <00>! 3. '`<EFBFBD><EFBFBD><EFBFBD>W<EFBFBD>QKmՋ
<00>! 4. '`<60><>OS<>b/g <00>! 5. <00>[SO<53>{thVؚ<56>~<7E>R<EFBFBD><52>
```
## ><3E><14> 8^<5E><>f[`N<4E>
### Q: b<>^<5E><><EFBFBD>N<EFBFBD>_<>Y<1F>
A: <00>^<5E><>HQ<05><><EFBFBD>[<00>_<1F>_<>Y](getting-started.md) <0C>6qT9hnc`O<>v̀of <09><>bf[`N_<1A>
- **<00>eKb**<1A>͑<EFBFBD>p w<>i<EFBFBD>_<EFBFBD><5F><EFBFBD><EFBFBD>
- ** g<>~<7E><>**<1A><>v<EFBFBD>c w8h<38>_<EFBFBD>i<EFBFBD>_<EFBFBD>T<EFBFBD><54><EFBFBD><EFBFBD>cWS
- **<00><>Bl'`<60><>**<1A>͑<EFBFBD>p w'`<EFBFBD><EFBFBD><EFBFBD>vsQ<EFBFBD>ech
### Q: ECS<00>T O<>~OOP g<>NHN:S+R<1F>
A: <00><><EFBFBD><EFBFBD>[<00>i<EFBFBD>_<EFBFBD><5F><EFBFBD><EFBFBD>](concepts-explained.md)<00>v"ECS vs O<>~<7E>g<EFBFBD>g"<00><>R <0C>(u<>{US<55>OP[<5B><>ʑ$N<05><>]_0
### Q: <00>YUO <09><>b<EFBFBD>~<7E>N"}_{|<7C>W<1F>
A: [<00>i<EFBFBD>_<EFBFBD><5F><EFBFBD><EFBFBD>](concepts-explained.md) g<><67><EFBFBD>~<7E>v"}_ <09><>bcWS <0C>S<>b<EFBFBD>QV{Am z<>V<EFBFBD>TwQSO:y<>O0
### Q: <00>|<7C>~<7E>vgbL<62>z<EFBFBD><7A><><CD91>T<1F>
A: ^<5E>8^͑<><CD91><01>[<00>|<7C>~<7E><><EFBFBD><EFBFBD>cWS](system-guide.md)<00><><EFBFBD>~<7E><>ʑ<EFBFBD>N<EFBFBD>|<7C>~z<><7A>^<5E><76><CD91>'`<60>T<EFBFBD><54>n<6E>e<EFBFBD>l0
### Q: <00>YUO<03>Ջ'`<60><><EFBFBD><1F>
A:
1. O(u['`<60><><EFBFBD>W<EFBFBD>QKmՋ](performance.md)-N<>v<EFBFBD>]wQ
2. <00>S<03>['`<60><>OS<>b/g](performance-optimization.md)<00>v<EFBFBD>v<EFBFBD>c<EFBFBD>e<EFBFBD>l
3. <00>g w[<00>[SO<53>{thV:y<>O](entity-manager-example.md)<00>v<EFBFBD>~<7E><><EFBFBD>R<EFBFBD><52>
## =<3D><><EFBFBD> ibU\<05><><EFBFBD>
### <00><><EFBFBD><EFBFBD>!j_<>T<EFBFBD>g<EFBFBD>g
- [<00>~<7E>N<EFBFBD><4E><EFBFBD><EFBFBD>gsO<73>[<5B><>](component-design-guide.md) - <00>YUO<55><4F><EFBFBD><EFBFBD><EFBFBD>S<EFBFBD>~<7E>b<EFBFBD>v<EFBFBD>~<7E>N
- [<00>|<7C>~<7E><><EFBFBD><EFBFBD>cWS](system-guide.md) - <00>|<7C>~<7E><><EFBFBD>vOS\O!j_
### '`<60><><EFBFBD>TOS
- [<00>i<EFBFBD>_<EFBFBD><5F><EFBFBD><EFBFBD>](concepts-explained.md) - '`<60><>OS<>b/g<>St
- ['`<60><>OS<>b/g](performance-optimization.md) - wQSOOS<>[<5B>s
### <00>[E<><45>^(u
- [<00>^(uHh<48>T](use-cases.md) - N T{|<7C>W8nb<>v<EFBFBD>[<5B>s
- [:Wof<6F>{tcWS](scene-management-guide.md) - YBg8nb<>v:Wof<6F>~<7E>~
## <> f[`N<>^<5E><>
### <00>[<5B><>:N;N
- =<3D><><EFBFBD> **<00><>f[<5B><>ZP** - <00>kf[N*N<>i<EFBFBD>_<EFBFBD><5F><>Q<EFBFBD>Nx<>[<5B>s
- <> **<00>N\ZPw<50>** - HQZP<5A>{US<55>v8nb <0C><>Q<10>ek<65>X<EFBFBD>R YBg<42>^
- =<3D>'<27> **YZP<5A>[<5B><>** - \Ջ N T<>v<EFBFBD><76><EFBFBD><EFBFBD><EFBFBD>eHh <0C>SOOO<>R
### t㉟St
- ><3E><14> **`<03>:N<>NHN** - N<EFBFBD>Sf[`HNZP <0C><>f<EFBFBD><66>t<><74>:N<>NHNُ7hZP
- =<3D><><EFBFBD> **sQ<73>l'`<60><>** - <00>N<EFBFBD><4E>T<>y<EFBFBD>d\O<>v'`<EFBFBD><EFBFBD>q_<EFBFBD>T
- =<3D> <0A> **<00>meQ<65>nx** - g<>u<EFBFBD><75><EFBFBD>e<EFBFBD>g wFh<46>g<EFBFBD>nx
### <00>_<EFBFBD>^
- =<3D><><EFBFBD> ** cz<63><7A>^f[`N** - HQ<48>c<EFBFBD>c<EFBFBD>W@x <0C><>Qf[ؚ<>~<7E>R<EFBFBD><52>
- <> **N<><6C>p** - <00>k!k<>SN<>lN*N;N<><4E> <0C> N<><4E>*<2A>Y
- =<3D><04> **<00>S Y<>~`N** - ͑<><CD91><EFBFBD>i<EFBFBD>_<EFBFBD><5F>Y<>~`NMb<EFBFBD><EFBFBD><EFBFBD>q<EFBFBD>~
_<>Y`O<>vECSf[`NKN<EFBFBD>e'T<01><>