diff --git a/assets/code/maze-ascension/components.rs b/assets/code/maze-ascension/components.rs deleted file mode 100644 index 516d1a4..0000000 --- a/assets/code/maze-ascension/components.rs +++ /dev/null @@ -1,3 +0,0 @@ -#[derive(Component, Debug, Clone, Copy, PartialEq, Eq, Default, Reflect)] -#[reflect(Component)] -pub struct Player; diff --git a/assets/code/maze-ascension/maze_generation.rs b/assets/code/maze-ascension/maze_generation.rs index efc37e9..cc0d148 100644 --- a/assets/code/maze-ascension/maze_generation.rs +++ b/assets/code/maze-ascension/maze_generation.rs @@ -39,7 +39,6 @@ pub(super) fn spawn_maze( Visibility::Visible, )) .insert_if(CurrentFloor, || *floor == 1) // Only floor 1 gets CurrentFloor - .insert_if(NextFloor, || *floor != 1) // All other floors get NextFloor .id(); let assets = MazeAssets::new(&mut meshes, &mut materials, &global_config); diff --git a/assets/images/tokei/maze-ascension.png b/assets/images/tokei/maze-ascension.png index d446538..98bc703 100644 Binary files a/assets/images/tokei/maze-ascension.png and b/assets/images/tokei/maze-ascension.png differ diff --git a/documentary_page.typ b/documentary_page.typ index 03d1ff1..243870f 100644 --- a/documentary_page.typ +++ b/documentary_page.typ @@ -49,7 +49,7 @@ #let long-underline = underline(box(width: 1fr, repeat(sym.space))) #set page(numbering: none) -= Dokumentārā lapa +#heading(level: 1, outlined: false, numbering: none, "Dokumentārā lapa") Kvalifikācijas darbs "*Spēles izstrāde, izmantojot Bevy spēļu dzinēju*" ir izstrādāts Latvijas Universitātes Eksakto zinātņu un tehnoloģiju fakultātē, @@ -68,18 +68,18 @@ izdrukai un/vai recenzentam uzrādītajai darba versijai. ) v(vspace / 2) - [Autors: *Kristiāns Francis Cagulis, kc22015 ~~\_\_.01.2025.*] + [Autors: *Kristiāns Francis Cagulis, kc22015 ~~06.01.2025.*] v(vspace) [Rekomendēju darbu aizstāvēšanai\ - Darba vadītājs: *prof. Mg. dat. Jānis Iljins ~~\_\_.01.2025.*] + Darba vadītājs: *prof. Mg. dat. Jānis Iljins ~~06.01.2025.*] v(vspace) [Recenzents: *Artūrs Driķis*] v(vspace) - [Darbs iesniegs *\_\_.01.2025.*\ + [Darbs iesniegs *06.01.2025.*\ Kvalifikācijas darbu pārbaudījumu komisijas sekretārs (elektronisks paraksts) ] diff --git a/main.typ b/main.typ index f388f8c..0fb8e9f 100644 --- a/main.typ +++ b/main.typ @@ -44,8 +44,20 @@ = Ievads == Nolūks -Šī dokumenta mērķis ir raksturot sešstūru labirinta spēles "Maze Ascension" -programmatūras prasības un izpētīt Bevy spēļu dzinēja iespējas. +Šī programmatūras prasību specifikācija (PPS) ir izstrādāta, lai definētu un +dokumentētu procedurāli ģenerētas sešstūru labirinta spēles "Maze Ascension" +programmatūras prasības, arhitektūru un tehnisko implementāciju. Dokumenta +galvenais uzdevums ir nodrošināt skaidru un visaptverošu projekta aprakstu, kas +kalpo gan kā tehniskā specifikācija, gan kā izpētes dokumentācija Bevy spēļu +dzinēja iespēju demonstrēšanai. + +Dokumentācija ir paredzēta vairākām mērķauditorijām. Primāri tā ir orientēta uz +projekta izstrādātājiem un programmētājiem, kas strādā ar Bevy dzinēju, sniedzot +detalizētu ieskatu ECS arhitektūras implementācijā un procedurālās ģenerācijas +risinājumos. Tāpat dokumentācija ir noderīga spēļu izstrādes studentiem un +tehniskajiem vadītājiem, kas vēlas izprast Bevy dzinēja piemērotību līdzīgiem +projektiem, kā arī kvalifikācijas darba vērtētājiem, kas izvērtē projekta +tehnisko realizāciju un atbilstību izvirzītajām prasībām. == Darbības sfēra Darba galvenā uzmanība ir vērsta uz būtisku spēles mehāniku ieviešanu, tostarp @@ -663,6 +675,8 @@ programmu. ), ) + +#pagebreak() #function-table( "Labirinta būvētājs", "LGMF01", @@ -1378,9 +1392,6 @@ un likvidēšanu. `RespawnMaze`, "Atjauno esošo labirintu", "Atjauno labirintu.", - `DespawnMaze`, - "Noņem labirintu", - "Izdzēš labirinta entitātes norādītajam stāvam.", ) ==== Stāvu notikumi @@ -1420,9 +1431,6 @@ un likvidēšanu. `RespawnPlayer`, "Atjauno spēlētāju", "Atiestata spēlētāju uz pašreizējā stāva sākuma pozīciju.", - `DespawnPlayer`, - "Noņem spēlētāju", - "Izdzēš spēlētāja entitātes.", ) === Resursi @@ -1438,9 +1446,6 @@ Spēle izmanto vairākus resursus globālās konfigurācijas un stāvokļa pārv #resources-table( caption: "Globālie resursi", - `MazePluginLoaded`, - "Spraudņa stāvokļa marķieris", - "Norāda labirinta spraudņa inicializāciju.", `GlobalMazeConfig`, "Labirinta vizuālie iestatījumi", "Uzglabā globālos labirinta izskata parametrus.", @@ -2028,9 +2033,9 @@ Projekta darbietilpības novērtēšanai tika izmantota QSM (angl. Quantitative Software Management, latv. kvantitatīvā programmatūra vadība) metodoloģija, kas balstās uz $550$ verificētu programmatūras projektu datubāzi @QSM. Izmantojot "tokei" rīku @tokei, tika veikta detalizēta projekta koda analīze, -kas parādija, ka "Maze Ascension" projekts satur $1927$ koda rindiņas (sk. @tokei-maze-ascension), bet -saistītā "hexlab" bibliotēka -- $979$ rindiņas (sk. @tokei-hexlab), kopā veidojot $2906$ loģiskās koda -rindiņas, neiekļaujot tukšās rindiņas un komentārus . +kas parādija, ka "Maze Ascension" projekts satur $2686$ koda rindiņas (sk. @tokei-maze-ascension), bet +saistītā "hexlab" bibliotēka -- $979$ rindiņas (sk. @tokei-hexlab), kopā +veidojot $3236$ pirmkoda rindiņas, neiekļaujot tukšās rindiņas un komentārus. Saskaņā ar QSM etalontabulu "Business Systems Implementation Unit (New and Modified IU) Benchmarks", pirmās kvartiles projekti ($25%$ mazākie no $550$ @@ -2056,7 +2061,6 @@ Turklāt jāņem vērā projekta papildu sarežģītības faktori: koda rakstīšanu, bet arī izpēti, dokumentēšanu un optimizāciju. ] - = Secinājumi Kvalifikācijas darba ietvaros tika izstrādāta trīsdimensiju spēle, izmantojot @@ -2100,6 +2104,7 @@ Projekta turpmākās attīstības iespējas ietver: #include "src/attachments.typ" #include "src/code.typ" +#include "documentary_page.typ" // #pagebreak() // #total-words words