feat: add conclusion

This commit is contained in:
Kristofers Solo 2025-01-02 19:10:45 +02:00
parent 297dba61a8
commit 2721ef6034
3 changed files with 55 additions and 9 deletions

View File

@ -16,7 +16,7 @@ hex-grid:
bevy-examples:
type: Web
title: Bevy Examples
author:
author: Bevy Projekta Izstrādātāji
url: {value: "https://bevyengine.org/examples/", date: 2024-09-14}
bevy-cheatbook:
type: Web
@ -42,14 +42,17 @@ lvs_72:
maze-generation:
type: Web
title: Maze Generation
author:
url: https://rosettacode.org/wiki/Maze_generation
bevy-quickstart:
type: Web
title: Bevy New 2D
author:
url: https://github.com/TheBevyFlock/bevy_new_2d
sem-ver:
type: Web
title: Semantiskā versiju veidošana
author: Tom Preston-Werner
url: {value: "https://semver.org/", date: 2024-09-17}
omg-uml:
type: Book
@ -61,18 +64,18 @@ omg-uml:
webgl2:
type: Web
title: Bevy + WebGPU
author:
author: Carter Anderson
url: {value: "https://bevyengine.org/news/bevy-webgpu/", date: 2024-09-20}
bevy-egui:
type: Web
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}
bevy-inspector-egui:
type: Web
title: Bevy Inspector Egui bibliotēkas dokumentācija
author:
url: {value: "https://docs.rs/bevy-inspector-egui/0.28.0/bevy_inspector_egui/", date: 2024-09-26}
author: Jakob Hellermann
url: {value: "https://docs.rs/bevy-inspector-egui/latest/bevy_inspector_egui/", date: 2024-09-26}
the-rust-performance-book:
type: Book
title: The Rust Performance Book
@ -87,18 +90,22 @@ cargo-tarpaulin:
ecs:
type: Web
title: ECS
author:
url: {value: "https://en.wikipedia.org/wiki/Entity_component_system", date: 2024-09-12}
bevy-ecs:
type: Web
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}
SRP:
type: Web
title: Single-responsibility principle
author:
url: {value: "https://en.wikipedia.org/wiki/Single-responsibility_principle"}
SoC:
type: Web
title: Separation of concerns
author:
url: {value: "https://en.wikipedia.org/wiki/Separation_of_concerns"}
begginer-patterns:
type: Book
@ -153,3 +160,8 @@ QSM:
title: Software Project Performance Benchmark Tables
author: QSM, Inc.
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/

View File

@ -4,6 +4,7 @@
#let vspace = 1fr
#let fill = 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")
@ -30,7 +31,7 @@ izdrukai.
Darba vadītājs: *prof. Mg. dat. Jānis Iljins ~~\_\_.01.2025.*]
v(vspace)
[Recenzents: _grāds, vārds, uzvārds_ #long-underline]
[Recenzents: *Artūrs Driķis*]
v(vspace)

View File

@ -25,7 +25,7 @@
/ 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;
/ 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;
/ 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;
@ -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.
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
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
#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(
title: "Izmantotā literatūra un avoti",