mirror of
https://github.com/kristoferssolo/Qualification-Thesis.git
synced 2025-10-21 20:10:37 +00:00
feat: add conclusion
This commit is contained in:
parent
297dba61a8
commit
2721ef6034
@ -16,7 +16,7 @@ hex-grid:
|
|||||||
bevy-examples:
|
bevy-examples:
|
||||||
type: Web
|
type: Web
|
||||||
title: Bevy Examples
|
title: Bevy Examples
|
||||||
author:
|
author: Bevy Projekta Izstrādātāji
|
||||||
url: {value: "https://bevyengine.org/examples/", date: 2024-09-14}
|
url: {value: "https://bevyengine.org/examples/", date: 2024-09-14}
|
||||||
bevy-cheatbook:
|
bevy-cheatbook:
|
||||||
type: Web
|
type: Web
|
||||||
@ -42,14 +42,17 @@ lvs_72:
|
|||||||
maze-generation:
|
maze-generation:
|
||||||
type: Web
|
type: Web
|
||||||
title: Maze Generation
|
title: Maze Generation
|
||||||
|
author:
|
||||||
url: https://rosettacode.org/wiki/Maze_generation
|
url: https://rosettacode.org/wiki/Maze_generation
|
||||||
bevy-quickstart:
|
bevy-quickstart:
|
||||||
type: Web
|
type: Web
|
||||||
title: Bevy New 2D
|
title: Bevy New 2D
|
||||||
|
author:
|
||||||
url: https://github.com/TheBevyFlock/bevy_new_2d
|
url: https://github.com/TheBevyFlock/bevy_new_2d
|
||||||
sem-ver:
|
sem-ver:
|
||||||
type: Web
|
type: Web
|
||||||
title: Semantiskā versiju veidošana
|
title: Semantiskā versiju veidošana
|
||||||
|
author: Tom Preston-Werner
|
||||||
url: {value: "https://semver.org/", date: 2024-09-17}
|
url: {value: "https://semver.org/", date: 2024-09-17}
|
||||||
omg-uml:
|
omg-uml:
|
||||||
type: Book
|
type: Book
|
||||||
@ -61,18 +64,18 @@ omg-uml:
|
|||||||
webgl2:
|
webgl2:
|
||||||
type: Web
|
type: Web
|
||||||
title: Bevy + WebGPU
|
title: Bevy + WebGPU
|
||||||
author:
|
author: Carter Anderson
|
||||||
url: {value: "https://bevyengine.org/news/bevy-webgpu/", date: 2024-09-20}
|
url: {value: "https://bevyengine.org/news/bevy-webgpu/", date: 2024-09-20}
|
||||||
bevy-egui:
|
bevy-egui:
|
||||||
type: Web
|
type: Web
|
||||||
title: Bevy Egui bibliotēkas dokumentācija
|
title: Bevy Egui bibliotēkas dokumentācija
|
||||||
author:
|
author: Vladyslav Batyrenko
|
||||||
url: {value: "https://docs.rs/bevy_egui/latest/bevy_egui/", date: 2024-09-26}
|
url: {value: "https://docs.rs/bevy_egui/latest/bevy_egui/", date: 2024-09-26}
|
||||||
bevy-inspector-egui:
|
bevy-inspector-egui:
|
||||||
type: Web
|
type: Web
|
||||||
title: Bevy Inspector Egui bibliotēkas dokumentācija
|
title: Bevy Inspector Egui bibliotēkas dokumentācija
|
||||||
author:
|
author: Jakob Hellermann
|
||||||
url: {value: "https://docs.rs/bevy-inspector-egui/0.28.0/bevy_inspector_egui/", date: 2024-09-26}
|
url: {value: "https://docs.rs/bevy-inspector-egui/latest/bevy_inspector_egui/", date: 2024-09-26}
|
||||||
the-rust-performance-book:
|
the-rust-performance-book:
|
||||||
type: Book
|
type: Book
|
||||||
title: The Rust Performance Book
|
title: The Rust Performance Book
|
||||||
@ -87,18 +90,22 @@ cargo-tarpaulin:
|
|||||||
ecs:
|
ecs:
|
||||||
type: Web
|
type: Web
|
||||||
title: ECS
|
title: ECS
|
||||||
|
author:
|
||||||
url: {value: "https://en.wikipedia.org/wiki/Entity_component_system", date: 2024-09-12}
|
url: {value: "https://en.wikipedia.org/wiki/Entity_component_system", date: 2024-09-12}
|
||||||
bevy-ecs:
|
bevy-ecs:
|
||||||
type: Web
|
type: Web
|
||||||
title: Bevy ECS
|
title: Bevy ECS
|
||||||
|
author: Bevy Projekta Izstādātāji
|
||||||
url: {value: "https://bevyengine.org/learn/quick-start/getting-started/ecs/", date: 2024-09-12}
|
url: {value: "https://bevyengine.org/learn/quick-start/getting-started/ecs/", date: 2024-09-12}
|
||||||
SRP:
|
SRP:
|
||||||
type: Web
|
type: Web
|
||||||
title: Single-responsibility principle
|
title: Single-responsibility principle
|
||||||
|
author:
|
||||||
url: {value: "https://en.wikipedia.org/wiki/Single-responsibility_principle"}
|
url: {value: "https://en.wikipedia.org/wiki/Single-responsibility_principle"}
|
||||||
SoC:
|
SoC:
|
||||||
type: Web
|
type: Web
|
||||||
title: Separation of concerns
|
title: Separation of concerns
|
||||||
|
author:
|
||||||
url: {value: "https://en.wikipedia.org/wiki/Separation_of_concerns"}
|
url: {value: "https://en.wikipedia.org/wiki/Separation_of_concerns"}
|
||||||
begginer-patterns:
|
begginer-patterns:
|
||||||
type: Book
|
type: Book
|
||||||
@ -153,3 +160,8 @@ QSM:
|
|||||||
title: Software Project Performance Benchmark Tables
|
title: Software Project Performance Benchmark Tables
|
||||||
author: QSM, Inc.
|
author: QSM, Inc.
|
||||||
url: https://www.qsm.com/resources/qsm-benchmark-tables
|
url: https://www.qsm.com/resources/qsm-benchmark-tables
|
||||||
|
bevy-0.15:
|
||||||
|
type: Web
|
||||||
|
title: Bevy 0.15
|
||||||
|
author: Bevy Projekta Izstādātāji
|
||||||
|
url: https://bevyengine.org/news/bevy-0-15/
|
||||||
|
|||||||
3
doc.typ
3
doc.typ
@ -4,6 +4,7 @@
|
|||||||
#let vspace = 1fr
|
#let vspace = 1fr
|
||||||
#let fill = box(width: 1fr, repeat(sym.space))
|
#let fill = box(width: 1fr, repeat(sym.space))
|
||||||
#let long-underline = underline(box(width: 1fr, repeat(sym.space)))
|
#let long-underline = underline(box(width: 1fr, repeat(sym.space)))
|
||||||
|
#set page(numbering: none)
|
||||||
|
|
||||||
#heading(numbering: none, outlined: false, "Dokumentārā lapa")
|
#heading(numbering: none, outlined: false, "Dokumentārā lapa")
|
||||||
|
|
||||||
@ -30,7 +31,7 @@ izdrukai.
|
|||||||
Darba vadītājs: *prof. Mg. dat. Jānis Iljins ~~\_\_.01.2025.*]
|
Darba vadītājs: *prof. Mg. dat. Jānis Iljins ~~\_\_.01.2025.*]
|
||||||
|
|
||||||
v(vspace)
|
v(vspace)
|
||||||
[Recenzents: _grāds, vārds, uzvārds_ #long-underline]
|
[Recenzents: *Artūrs Driķis*]
|
||||||
|
|
||||||
|
|
||||||
v(vspace)
|
v(vspace)
|
||||||
|
|||||||
39
main.typ
39
main.typ
@ -25,7 +25,7 @@
|
|||||||
/ Audio: Skaņas komponentes, kas ietver gan skaņas efektus, gan fona mūziku;
|
/ Audio: Skaņas komponentes, kas ietver gan skaņas efektus, gan fona mūziku;
|
||||||
/ CI/CD: nepārtraukta integrācija un nepārtraukta izvietošana;
|
/ CI/CD: nepārtraukta integrācija un nepārtraukta izvietošana;
|
||||||
/ DPD: datu plūsmas diagramma;
|
/ DPD: datu plūsmas diagramma;
|
||||||
/ ECS: entitāšu komponenšu sistēma (angl. Entity-Component-System)@ecs;
|
/ ECS: entitāšu-komponenšu sistēma (angl. Entity-Component-System)@ecs;
|
||||||
/ Interpolācija: starpvērtību atrašana pēc funkcijas doto vērtību virknes;
|
/ Interpolācija: starpvērtību atrašana pēc funkcijas doto vērtību virknes;
|
||||||
/ Jaucējtabula#footnote[https://lv.wikipedia.org/wiki/Jauc%C4%93jtabula]: jeb heštabula (angl. hash table)#footnote[https://en.wikipedia.org/wiki/Hash_table] ir datu struktūra, kas saista identificējošās vērtības ar piesaistītajām vērtībām;
|
/ Jaucējtabula#footnote[https://lv.wikipedia.org/wiki/Jauc%C4%93jtabula]: jeb heštabula (angl. hash table)#footnote[https://en.wikipedia.org/wiki/Hash_table] ir datu struktūra, kas saista identificējošās vērtības ar piesaistītajām vērtībām;
|
||||||
/ Laidiens: Programmatūras versija, kas ir gatava izplatīšanai lietotājiem un satur īpašas funkcijas, uzlabojumus vai labojumus;
|
/ Laidiens: Programmatūras versija, kas ir gatava izplatīšanai lietotājiem un satur īpašas funkcijas, uzlabojumus vai labojumus;
|
||||||
@ -84,7 +84,7 @@ pieredzi, veicinot izpēti un eksperimentēšanu ar dažādām spēju kombināci
|
|||||||
radot dinamiskākus un aizraujošākus spēles scenārijus.
|
radot dinamiskākus un aizraujošākus spēles scenārijus.
|
||||||
|
|
||||||
No tehniskā viedokļa darbā tiek pētīta šo funkciju īstenošana, izmantojot
|
No tehniskā viedokļa darbā tiek pētīta šo funkciju īstenošana, izmantojot
|
||||||
Bevy entitāšu komponentu sistēmas (tuprmāk tekstā -- ECS) arhitektūru.
|
Bevy entitāšu-komponentu sistēmas (tuprmāk tekstā -- ECS) arhitektūru.
|
||||||
Tas ietver stabilu spēles vides sistēmu izstrādi, stāvokļa pārvaldības
|
Tas ietver stabilu spēles vides sistēmu izstrādi, stāvokļa pārvaldības
|
||||||
mehānismus un efektīvu Bevy iebūvēto funkcionalitāšu izmantošanu.
|
mehānismus un efektīvu Bevy iebūvēto funkcionalitāšu izmantošanu.
|
||||||
|
|
||||||
@ -1930,7 +1930,40 @@ Turklāt jāņem vērā projekta papildu sarežģītības faktori:
|
|||||||
|
|
||||||
|
|
||||||
= Secinājumi
|
= Secinājumi
|
||||||
#todo("uzrakstīt secinājumus")
|
|
||||||
|
Kvalifikācijas darba ietvaros tika izstrādāta trīsdimensiju spēle, izmantojot
|
||||||
|
Bevy spēļu dzinēju un Rust programmēšanas valodu un tās dokumentācija.
|
||||||
|
Projekta izstrādes gaitā tika sasniegti vairāki nozīmīgi rezultāti un gūtas
|
||||||
|
vērtīgas atziņas.
|
||||||
|
|
||||||
|
Projekta galvenie sasniegumi ietver procedurāli ģenerēta sešstūraina labirinta
|
||||||
|
implementāciju, kas balstās uz meklēšanas dziļumā (DFS) algoritmu.
|
||||||
|
Šī funkcionalitāte tika veiksmīgi nodalīta atsevišķā "hexlab" bibliotēkā, kas
|
||||||
|
padara to pieejamu atkārtotai izmantošanai citos projektos.
|
||||||
|
Tika izveidota arī efektīva stāvu pārvaldības sistēma, kas nodrošina plūstošu
|
||||||
|
pāreju starp dažādiem labirinta līmeņiem.
|
||||||
|
|
||||||
|
Bevy spēļu dzinēja izmantošana ļāva efektīvi implementēt entitāšu-komponenšu
|
||||||
|
sistēmu (ECS), kas nodrošina labu veiktspēju un koda organizāciju.
|
||||||
|
Tomēr tika konstatēts, ka Bevy ekosistēma joprojām ir aktīvās izstrādes stadijā,
|
||||||
|
ko apliecina projekta izstrādes laikā iznākusī jaunā versija (0.15).
|
||||||
|
Ši versija ieviesa vairākas būtiskas izmaiņas, piemēram, "Required Components"
|
||||||
|
(latv. nepieciešamo komponentu) konceptu uzlabotu animāciju sistēmu un daudz ko
|
||||||
|
citu, kas radīja nepieciešamību pielāgot esošo kodu @bevy-0.15.
|
||||||
|
Šāda strauja attīstība, no vienas puses, nodrošina jaunas iespējas un
|
||||||
|
uzlabojumus, bet no otras puses, rada izaicinājumus saistībā ar dokumentācijas
|
||||||
|
aktualitāti un bibliotēku savietojamību.
|
||||||
|
|
||||||
|
Izstrādes procesā īpaša uzmanība tika pievērsta koda kvalitātei un
|
||||||
|
dokumentācijai.
|
||||||
|
Tika izveidota detalizēta tehniskā dokumentācija, kas ietver gan sistēmas
|
||||||
|
arhitektūras aprakstu, gan atsevišķu komponenšu funkcionalitātes skaidrojumu.
|
||||||
|
|
||||||
|
Projekta turpmākās attīstības iespējas ietver:
|
||||||
|
- papildu labirinta ģenerēšanas algoritmu implementāciju;
|
||||||
|
- spēles mehānikas paplašināšanu ar jaunām papildspējām;
|
||||||
|
- grafiskās kvalitātes uzlabojumus;
|
||||||
|
- tīkla spēles režīma ieviešanu.
|
||||||
|
|
||||||
#bibliography(
|
#bibliography(
|
||||||
title: "Izmantotā literatūra un avoti",
|
title: "Izmantotā literatūra un avoti",
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user