Nkeji 7 / 11

Code Generation na Engine Integration: Unity (C#) na adịghị adị (Blueprint/C++)

Uru:

  • Ikike imepụta koodu egwuregwu a pụrụ ịdabere na ya, jikọtara ya site na ọgụgụ isi site na inye injin, ụdị, asụsụ na ụkpụrụ ụlọ wee jikọta ya site na ịgụ na ịghọta koodu ahụ.
  • Ikike ijikwa arụmọrụ akọwapụtara nke koodu egwuregwu (oke n'otu etiti), okirikiri ndụ injin, na ihe egwu nhụhụhụ site na nchịkọta, nnwale na ịkọwapụta.
  • Ikike itinye ụkpụrụ nke ndị ọbịa-ikike na egwuregwu ọtụtụ egwuregwu ma jiri ozi nchekwa naanị iji chebe ma nyochaa egwuregwu nke onwe ya.

Egwuregwu bụ software; N'agbanyeghị otú e si hazie ya nke ọma, a na-eji koodu eme ya. Igwe egwuregwu bụ akụrụngwa na-eme ka egwuregwu ahụ na-agba ọsọ: ịdị n'otu (njin nke ejiri ọtụtụ nde ede na C #) na Injin Unreal (engine na-eji C ++ na asụsụ scripting visual Blueprint) bụ ihe abụọ a na-ahụkarị. AI bụ otu n'ime ihe enyemaka tozuru oke na ọgbọ koodu: onye na-ahụ maka ọkpụkpọ, sistemu ngwa ahịa, igwe steeti, nchekwa / ibu, mgbagha interface, nbipu na nrụgharị (koodu na-emegharị na-emebighị omume ya). Mana koodu egwuregwu nwere ọnyà nke ya: arụmọrụ (ọnụego okpokolo agba), ndụ injin, nchekwa ọtụtụ. Na nkeji a, ị ga-amụta ka esi eji AI n'enweghị nsogbu na nke ọma na koodu egwuregwu.

Critical ụkpụrụ: engine na ụdị ọnọdụ

Ọ bụrụ na AI amaghị nke injin na ụdị ọ na-ede maka ya, ọ ga-emepụta API mgbagwoju anya, ochie ma ọ bụ adịghị adị. Ya mere, nye engine, ụdị, asụsụ na ụkpụrụ ụlọ na koodu ọ bụla ozugbo. "Dee mmegharị ọkpụkpọ maka ịdị n'otu" adịghị ike; "Ịdị n'otu 2022.3, C #, Sistemụ Ntinye Ọhụrụ, mmegharị physics siri ike" dị ike. Ezipụta ma ịchọrọ Blueprint ma ọ bụ C++ na Unreal yana ụdị ị na-eji.

Chekwaa usoro mgbaba koodu site na nzọụkwụ:

  1. Nye ihe gbara ya gburugburu (igwe, ụdị, asụsụ, ihe owuwu ugbu a, ihe mgbochi).
  2. Chọrọ ya obere ma kọwaa (otu akụkụ, ọ bụghị usoro dum).
  3. Gụọ ma ghọta koodu ahụ (ghọta ihe ọ na-eme n'ahịrị site na ahịrị; etinyela koodu ị na-aghọtaghị).
  4. Mee ma nwalee (na-agba ọsọ na injin; profaịlụ - tụọ arụmọrụ).
  5. Refactor na imekota (ọkọlọtọ oru ngo dakọtara).
Ndụmọdụ: Mgbe ị na-arịọ AI maka koodu, kwuo "jiri okwu kọwaa". Ebumnuche gị bụ ịghọta koodu; Itinye koodu AI ị na-aghọtaghị n'ime oru ngo ga-akwakọba ụgwọ a na-akwụghị ụgwọ. Rịọkwa maka koodu n'obere obere, nke a na-anwale: Kama usoro ahịrị 500, akụkụ ahịrị 30-50 nke na-arụ otu ọrụ akọwapụtara dị mfe iji nyochaa ma jikọta.

Ọnyà kpọmkwem maka koodu egwuregwu

Arụmọrụ. Koodu egwuregwu na-agba ugboro 30-60+ kwa nkeji. AI nwere ike itinye ọrụ dị oke ọnụ (oke ebe nchekwa, nyocha, njikwa eriri) n'ime loop mmelite nke na-agba na etiti ọ bụla; nke a na-ebelata ọnụego etiti. Koodu arụmọrụ dị oke egwu na profaịlụ ma na-enye mgbochi AI dị ka "na-agba ọsọ na etiti ọ bụla, enweghị oke".

okirikiri ndụ engine. AI na-enwe mgbagwoju anya mgbe ụfọdụ mgbe a na-akpọ ụzọ pụrụ iche, dị ka Teta/Malite/Update in Unity, BeginPlay/Tick in Unreal. Nweta njehie okirikiri ndụ site na nnwale.

Nchekwa ọtụtụ egwuregwu. Nke a bụ okwu kachasị mkpa n'ihe gbasara IT / nchekwa. Ekwela ntụkwasị obi onye ahịa n'ọtụtụ egwuregwu: enwere ike ijikwa onye ahịa na kọmputa onye ọkpụkpọ maka ịghọ aghụghọ ule. Nyochaa ọkwa dị oke egwu dị ka isi, mmebi, ego na ihe nkesa (ihe nkesa-ikike). Jikwaa koodu netwọkụ nke AI mepụtara megide ụkpụrụ a; Ọ bụrụ na AI emepụtala enweghị ntụkwasị obi nke ndị ahịa, dozie ya. Jiri ozi a naanị iji chebe ma nyochaa egwuregwu nke gị; Ịnweta ma ọ bụ ịghọ aghụghọ n'ule na ihe nkesa onye ọzọ bụ ihe iwu akwadoghị na enweghị ụkpụrụ.

Akpachara anya: Koodu emepụtara AI nwere ike ịnwe adịghị ike (nkwado ntinye na-efu, ntụkwasị obi ndị ahịa, chekwaa njikwa faịlụ). Anabatala koodu ahụ n'amaghị ama; Mee nyocha nchekwa, ọkachasị nke netwọkụ, akụ na ụba, yana koodu chekwaa.

Ụgwọ ụlọ na mmezi

AI na-arụpụta ọrụ onye ọ bụla ngwa ngwa; Ma ihe owuwu nke egwuregwu-otú e si ekewa usoro, otú ha na-ekwurịta okwu, ebe a na-edebe data-bụ mkpebi dị ogologo oge, ọ bụkwa nke mmadụ. Ọ bụrụ na ị gwa AI ka ọ "dee ngwa ahịa niile, ịlụ ọgụ ma chekwaa usoro ọnụ" ị ga-arụ ọrụ mana jikọtara ọnụ, nke siri ike na-edobe, na-enweghị ike ịgbasa bọọlụ yarn. Kama, ị na-emepụta ihe owuwu ahụ, jiri AI mejupụta obere ihe nwere oghere akọwapụtara. Ezigbo ụkpụrụ ụlọ na-eme ka ihe dị iche dị ka egwuregwu na-eto eto: mkpebi ọjọọ na-alọghachi otu afọ ka ụgwọ ọrụ nka na-egbu oge ọhụụ ọ bụla.

Isi iyi ọzọ nke ụgwọ mmezi bụ koodu nke na-abanye n'ọrụ ahụ n'aghọtaghị ya. Usoro nke AI dere nwere ike ịrụ ọrụ taa; Ma mgbe ị ga-eji dochie ya ọnwa isii ka e mesịrị na ọ dịghị onye na-echeta ihe ha mere, ụgwọ na-atụgharị n'ime mmasị. Ọ bụ ya mere ọzụzụ abụọ ji dị mkpa: ịgụ na ịghọta koodu n'oge mmepụta, na ịrịọ maka ịkọwapụta okwu sitere na AI. Dị ka usoro isi mkpịsị aka, etinyela koodu AI ọ bụla n'ime ọrụ gị nke ị nweghị ike idegharị onwe gị ma ọ bụ ma ọ dịkarịa ala kọwaa ahịrị n'ahịrị. AI na-enye ọsọ ọsọ; Ịdọ aka ná ntị gị na-enye nkwado.

Obere ikpe atọ

Ikpe 1 - Ọnọdụ mwepụta gbochiri ahụhụ ahụ. Onye mmemme kwuru nke mbụ, "Dee ihe ndekọ maka ịdị n'otu"; koodu ahụ na-eji API ochie, ọ chịkọtaghị. Mgbe ahụ, o nyere ihe gbara ya gburugburu "Unity 2022.3, C #, dabere na ScriptableObject"; koodu ahụ chịkọtara nke mbụ ma dabara na ọrụ ahụ. Ihe gbara ya gburugburu chekwara otu awa nke nbibi.

Ikpe 2 - Ọnyà arụmọrụ. N'otu egwuregwu ọnụego etiti dị ala. Mgbe a na-akọwapụta ya, a hụrụ na usoro Nwelite nke AI mepụtara na-ekenye ndepụta ọhụrụ na etiti ọ bụla wee chọọ ndị iro. Ejiri nrụtụ aka echekwara na nwelite na-abụghị akụkụ anọ, na-abawanye ọnụego etiti site na 42 ruo 60.

Ikpe 3 - Nchekwa adịghị ike jidere. N'egwuregwu egwuregwu ọtụtụ, koodu AI na-emepụta na-agbakọ mmebi na onye ahịa wee kọọrọ ya ihe nkesa; nke a ghere oghe maka ịghọ aghụghọ ule (onye ahịa nwere ike imebi mmebi na-enweghị ngwụcha). Emeela koodu ahụ ka ọ bụrụ onye nwe ikike (ihe nkesa na-agbakọ mmebi ahụ). Nyocha ahụ gbochiri asịrị aghụghọ n'akwụkwọ mgbe e bipụtara ya.

Ndebiri anọ enwere ike iṅomi

1) Arịrịọ koodu nwere ọnọdụ:

Engine: ịdị n'otu 2022.3. Asụsụ: C#. Nhazi: [dịka ọmụmaatụ. akụrụngwa dabeere].Mkpagide: ikenye na Mmelite; bụrụ nke a ga-agụ ma kwuo okwu. Ọrụ: [otu, ihe akọwapụtara, dịka ọmụmaatụ. "Onye na-ahụ maka ihe nrịba elu okpukpu abụọ". Nyochaa na API ọ bụla ị na-eji dị na ụdị a; Ọ bụrụ na ị maghị, mee ka m mara.

2) Nkọwa/nyocha koodu:

Kọwaa ahịrị koodu ndị a site n'ahịrị wee dee (1) ihe ọ na-eme, (2) nsogbu nwere ike ịrụ ọrụ (oke n'otu etiti, ọchụchọ dị oke ọnụ), (3) ahụhụ nwere ike ime, (4) aro maka mmelite. Koodu: [mado]

3) Nyocha nchekwa ọtụtụ:

Nyochaa koodu ọtụtụ egwuregwu ndị a maka nchekwa. Kpọmkwem: ebe a tụkwasịrị onye ahịa obi, ọnọdụ dị oke egwu nke kwesịrị ka enyocha ya na ihe nkesa (mmebi, isi, ego), ntinye ntinye na-efu. Na-atụ aro idozi ime ihe nkesa-authoritarian.Nke a bụ naanị iji chebe egwuregwu nke m. Koodu: [mado]

4) Nrụgharị lekwasịrị anya profaịlụ arụmọrụ:

Koodu a na-agba n'okirikiri ọ bụla ma na-ebelata ọnụego etiti: [koodu].Chọta oke, nleba anya dị oke ọnụ, yana arụ ọrụ etiti site na-enweghị isi; Kwalite na-enweghị imebi omume site na caching na mmelite na-adịchaghị adịkarị. Kọwaa mgbanwe ndị ahụ.

Ngwa ngwa adịghị ike / Ike siri ike

Ngwa ngwa adịghị ike:

Dee usoro nchekwa na Unity.

Enweghị ụdị, usoro, oke data, nchekwa; Nsonaazụ bụ n'ozuzu na ihe ize ndụ.

Mgbasa ozi siri ike:

Engine: ịdị n'otu 2022.3, C#. Ọrụ: Sistemụ nchekwa/nkwado dabere JSON. Ka ịchekwaa: ọnọdụ ọkpụkpọ, ngwa ahịa, ọganihu. Mgbochi: nweta njikwa njehie megide nrụrụ faịlụ; Tinye nlele iguzosi ike n'ezi ihe (hash) na faịlụ echekwara iji gbochie ịghọ aghụghọ ule site na ịgbanwe ya ngwa ngwa site na onye ọkpụkpọ. Kwupụta koodu ahụ wee chọpụta na API ọ bụla nọ na ụdị a.

Ụdị nsụgharị, oke, njikwa njehie, na ịlele iguzosi ike n'ezi ihe na-eme ka mmepụta ahụ sie ike.

Tebụlụ okirikiri nke injin/asụsụ

injin

asụsụ

Ihe ị ga-enye AI

nlebara anya pụrụ iche

ịdị n'otu

C#

Ụdị, Usoro ntinye/physics

Melite oke, okirikiri ndụ

emeghi eme

Ntughari

Ụdị, ọnọdụ ọnụ

Oke mgbagha anya

emeghi eme

C++

Ụdị, modul Ọdịdị

Ebe nchekwa, GC, macros

otutu

ha abụọ

ụdị netwọk

Onye ngosi-ikike ikike

Mmejọ ndị nkịtị

  • Na-akọwapụtaghị engine/ụdị. Ọ sitere na API emechiela ma ọ bụ mebere ya.
  • Ịtụkwasị obi koodu na-aghọtaghị ya. Ụgwọ a na-akwụghị ụgwọ na-agbakọba.
  • Anaghị atụ arụmọrụ. Oke-site-frame oke na-ebelata ọnụ ọgụgụ etiti.
  • Ịtụkwasị onye ahịa obi. Enwere adịghị ike ịghọ aghụghọ n'ule na multiplayer.
  • Ịchọrọ usoro niile n'otu oge. Iberibe obere, enwere ike ịnwale dị mma.

Na nchịkọta

AI bụ onye inyeaka dị ike na koodu egwuregwu, mana ọ chọrọ injin, ụdị, na ọnọdụ ụkpụrụ ụlọ. Etinyela ya n'ime oru ngo na-agụghị na ịghọta koodu, na-achịkọta na ịnwale ya, na ịlele arụmọrụ na nchekwa. Jikwaa ihe nkesa-ikike n'ọtụtụ ọkpụkpọ ma jiri ozi nchekwa naanị maka ebumnuche nchekwa na nkwenye.

Ọrụ ngwa

Họrọ obere akụrụngwa (dịka ima elu okpukpu abụọ ma ọ bụ ngwa ngwa dị mfe). Mepụta koodu site n'inye engine na ụdị ya na ndebiri "arịrịọ koodu nwere ọnọdụ". Wepụ ihe egwu arụrụ arụ na ahụhụ site na iji ụdị “nkọwa/nyocha koodu” nyochaa otu koodu ahụ. Gwakọta ma nwalee koodu dị na injin ahụ.

ndetu

  • [ ] Enyere m injin, ụdị, asụsụ na ihe owuwu ụlọ.
  • [ ] Agụrụ m ma ghọta koodu ahụ; Achọrọ m ya na nkọwa.
  • [] Ana m achịkọta ma nwalee ya na injin wee tụọ arụmọrụ ya.
  • [] Emere m nlele nchekwa na netwọk / akụ na ụba / koodu nchekwa.
  • [ ] naanị m na-eji ozi nchekwa gbachitere egwuregwu nke m.