mirror of
https://github.com/kristoferssolo/Qualification-Thesis.git
synced 2025-10-21 20:10:37 +00:00
Add bibliography
This commit is contained in:
parent
d21deb8109
commit
385d33423e
1
assets/images/dpd/dpd0.jpg
Symbolic link
1
assets/images/dpd/dpd0.jpg
Symbolic link
@ -0,0 +1 @@
|
||||
../placeholder.jpg
|
||||
1
assets/images/dpd/dpd1.jpg
Symbolic link
1
assets/images/dpd/dpd1.jpg
Symbolic link
@ -0,0 +1 @@
|
||||
../placeholder.jpg
|
||||
BIN
assets/images/placeholder.jpg
Normal file
BIN
assets/images/placeholder.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 12 KiB |
41
bibliography.yml
Normal file
41
bibliography.yml
Normal file
@ -0,0 +1,41 @@
|
||||
typst:
|
||||
type: Web
|
||||
title: Typst
|
||||
author:
|
||||
- Mädje
|
||||
- Laurenz
|
||||
- Haug
|
||||
- Martin
|
||||
- Typst Projekta Izstrādātāji
|
||||
url: https://typst.app/
|
||||
hex_grid:
|
||||
type: Web
|
||||
title: Hexagonal Grids
|
||||
author: Red Blob Games
|
||||
url: {value: 'https://www.redblobgames.com/grids/hexagons/', date: 2024-09-10}
|
||||
bevy_examples:
|
||||
type: Web
|
||||
title: Bevy Examples
|
||||
author:
|
||||
url: {value: 'https://bevyengine.org/examples/', date: 2024-09-10}
|
||||
bevy_cheatbook:
|
||||
type: Web
|
||||
title: Unofficial Bevy Cheat Book
|
||||
author:
|
||||
url: {value: 'https://bevy-cheatbook.github.io/', date: 2024-09-10}
|
||||
lvs_68:
|
||||
type: Book
|
||||
title: Programmatūras prasību specifikācijas ceļvedis
|
||||
author: Institūcija SIA "Latvijas standarts"
|
||||
issue: 68
|
||||
date: 1996-03-27
|
||||
organization: Latvijas Nacionālais standartizācijas un metroloģijas centrs
|
||||
page-total: 22
|
||||
lvs_72:
|
||||
type: Book
|
||||
title: Ieteicamā prakse programmatūras projektējuma aprakstīšanai
|
||||
author: Institūcija SIA "Latvijas standarts"
|
||||
issue: 72
|
||||
date: 1996-03-27
|
||||
organization: Latvijas Nacionālais standartizācijas un metroloģijas centrs
|
||||
page-total: 13
|
||||
42
layout.typ
42
layout.typ
@ -7,6 +7,7 @@
|
||||
#let project(
|
||||
university: "",
|
||||
faculty: "",
|
||||
type: "",
|
||||
title: [],
|
||||
authors: (),
|
||||
advisor: "",
|
||||
@ -27,7 +28,7 @@
|
||||
)
|
||||
set text(
|
||||
//font: "New Computer Modern",
|
||||
font: "CMU", size: 12pt, hyphenate: auto, lang: "lv", region: "LV",
|
||||
font: "CMU", size: 12pt, hyphenate: auto, lang: "lv", region: "lv",
|
||||
)
|
||||
show raw: set text(font: "New Computer Modern Mono")
|
||||
|
||||
@ -38,8 +39,8 @@
|
||||
justify: true,
|
||||
leading: 1.5em,
|
||||
first-line-indent: indent,
|
||||
spacing: 1.5em,
|
||||
)
|
||||
show par: set block(spacing: 1.5em) // Set 1.5em gap between paragraphs
|
||||
show heading: set block(spacing: 1.5em)
|
||||
set terms(separator: [ -- ])
|
||||
|
||||
@ -80,10 +81,24 @@
|
||||
|
||||
align(
|
||||
center,
|
||||
text(
|
||||
20pt,
|
||||
weight: "bold",
|
||||
title,
|
||||
upper(
|
||||
text(
|
||||
20pt,
|
||||
weight: "bold",
|
||||
title,
|
||||
),
|
||||
),
|
||||
)
|
||||
|
||||
v(0.3fr)
|
||||
|
||||
align(
|
||||
center,
|
||||
upper(
|
||||
text(
|
||||
size: 16pt,
|
||||
type,
|
||||
),
|
||||
),
|
||||
)
|
||||
|
||||
@ -134,32 +149,34 @@
|
||||
/* --- Figure/Table config start --- */
|
||||
show heading: i-figured.reset-counters
|
||||
show figure: i-figured.show-figure.with(numbering: "1.1.")
|
||||
set figure(placement: auto)
|
||||
|
||||
show figure.where(kind: "i-figured-table"): set block(breakable: true)
|
||||
show figure.where(kind: "i-figured-table"): set figure.caption(position: top)
|
||||
|
||||
show figure: set par(justify: false) // disable justify for figures (tables)
|
||||
show figure.caption: set text(size: 11pt)
|
||||
|
||||
show figure.caption: it => {
|
||||
if it.kind == "i-figured-table" {
|
||||
align(
|
||||
return align(
|
||||
end,
|
||||
emph(it.counter.display(it.numbering) + " tabula ") + text(
|
||||
weight: "bold",
|
||||
it.body,
|
||||
),
|
||||
)
|
||||
} else if it.kind == "i-figured-image" {
|
||||
align(
|
||||
}
|
||||
if it.kind == "i-figured-image" {
|
||||
return align(
|
||||
start,
|
||||
emph(it.counter.display(it.numbering) + " att. ") + text(
|
||||
weight: "bold",
|
||||
it.body,
|
||||
),
|
||||
)
|
||||
} else {
|
||||
it
|
||||
}
|
||||
it
|
||||
}
|
||||
|
||||
set ref(supplement: it => { }) // disable default reference suppliments
|
||||
@ -199,6 +216,9 @@
|
||||
number-align: center,
|
||||
)
|
||||
|
||||
|
||||
// show link: set text(fill: blue.darken(20%))
|
||||
|
||||
// Main body
|
||||
body
|
||||
}
|
||||
|
||||
163
main.typ
163
main.typ
@ -2,23 +2,27 @@
|
||||
#import "@preview/i-figured:0.2.4"
|
||||
#import "@preview/tablex:0.0.9": tablex, rowspanx, colspanx, cellx
|
||||
#import "utils.typ": *
|
||||
#import "@preview/wordometer:0.1.3": word-count, total-words
|
||||
#show: word-count
|
||||
|
||||
#show: project.with(
|
||||
university: "Latvijas Universitāte",
|
||||
faculty: "Eksakto zinātņu un tehnoloģiju fakultāte",
|
||||
type: "Kvalifikācijas darbs",
|
||||
title: [Spēles izstrāde, izmantojot Bevy spēļu dzinēju],
|
||||
authors: ("Kristiāns Francis Cagulis, kc22015",),
|
||||
advisor: "prof. Mg. dat. Jānis Iljins",
|
||||
date: "Rīga 2025",
|
||||
)
|
||||
|
||||
#set heading(numbering: none)
|
||||
|
||||
= Apzīmējumu saraksts
|
||||
|
||||
/ DPD: datu plūsmas diagramma;
|
||||
/ ECS: entitāšu komponentu sistēma (angl. Entity-Component-System);
|
||||
/ PPA: programmatūras projektējuma apraksts;
|
||||
/ PPS: programmatūras prasību specifikācija;
|
||||
/ Papildspēja: objekts, kas kā spēles mehānika spēlētājam piešķir īslaicīgas priekšrocības vai papildu spējas (angl. power-up);
|
||||
/ Papildspēja: objekts, kas kā spēles mehānika spēlētājam piešķir īslaicīgas priekšrocības vai papildu spējas (angl. power-up#footnote[https://en.wikipedia.org/wiki/Power-up]<power-up>);
|
||||
/ Spēlētājs: lietotāja ieraksts vienas virtuālās istabas kontekstā.
|
||||
|
||||
/* Pēdējos gados spēļu izstrādes joma ir piedzīvojusi strauju popularitātes
|
||||
* pieaugumu, ko veicināja neatkarīgo spēļu skaita pieaugums un jaudīgu spēļu
|
||||
@ -32,7 +36,7 @@
|
||||
== 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.
|
||||
|
||||
#lorem(100)
|
||||
== Darbības sfēra
|
||||
#todo("add first sentence")
|
||||
|
||||
@ -63,10 +67,10 @@ netraucētu un efektīvu spēles pieredzi.
|
||||
|
||||
== Saistība ar citiem dokumentiem
|
||||
PPS ir izstrādāta, ievērojot LVS 68:1996 "Programmatūras prasību specifikācijas
|
||||
ceļvedis" un LVS 72:1996 "Ieteicamā prakse programmatūras projektējuma
|
||||
aprakstīšanai" standarta prasības.
|
||||
ceļvedis"@lvs_68 un LVS 72:1996 "Ieteicamā prakse programmatūras projektējuma
|
||||
aprakstīšanai"@lvs_72 standarta prasības.
|
||||
|
||||
#todo("papildināt dokumentus")
|
||||
#todo("papildināt dokumentu sarakstu")
|
||||
|
||||
== Pārskats
|
||||
Dokumenta ievads satur ...
|
||||
@ -85,11 +89,76 @@ Trešajā nodaļā tiek aprakstīta ...
|
||||
#set heading(numbering: "1.1.")
|
||||
= Vispārējais apraksts
|
||||
== Esošā stāvokļa apraksts
|
||||
Pašreizējo spēļu izstrādes ainavu raksturo pieaugoša interese par neatkarīgajām
|
||||
spēlēm un modernu, efektīvu spēļu dzinēju izmantošana. Izstrādātāji arvien
|
||||
biežāk meklē rīkus, kas piedāvā elastību, veiktspēju un lietošanas ērtumu. Spēļu
|
||||
dzinējs Bevy ar savu moderno arhitektūru un Rust programmēšanas valodas
|
||||
izmantošanu gūst arvien lielāku popularitāti izstrādātāju vidū, pateicoties tā
|
||||
drošības un laiksakritība funkcijām.
|
||||
|
||||
== Pasūtītājs
|
||||
Sistēma nav izstrādāta pēc konkrēta pasūtītāja pieprasījuma, tā ir raksturota un
|
||||
projektēta ar iespēju realizēt pēc studenta iniciatīvas kvalifikācijas darba
|
||||
ietvaros.
|
||||
|
||||
== Produkta perspektīva
|
||||
"Maze Ascension" ir izstrādāta kā daudzplatformu spēle, izmantojot nepārtrauktas
|
||||
integrācijas un nepārtrauktas izvietošanas (CI/CD) _pipeline_
|
||||
#todo("check CI/CD pipeline translation"), lai racionalizētu
|
||||
izstrādes un izplatīšanas procesu. Šis _pipeline_ ir konfigurēts tā, lai kompilētu
|
||||
spēli vairākām platformām, tostarp Linux, macOS, Windows un WebAssembly (Wasm).
|
||||
Tas nodrošina, ka spēle ir pieejama plašai auditorijai, nodrošinot konsekventu
|
||||
un saistošu pieredzi dažādās operētājsistēmās un vidēs.
|
||||
|
||||
Spēle tiek izplatīta, izmantojot #todo("GitHub releases") un #link("http://itch.io/")[itch.io], kas ir populāra neatkarīgo spēļu
|
||||
platforma, kas ļauj viegli piekļūt un izplatīt spēli visā pasaulē.
|
||||
Izmantojot šīs platformas, datorspēle gūst dažādu maksājumu modeļu un kopienas
|
||||
iesasaistes funkcijas, tādējādi palielinot spēles sasniedzamību un atpazīstamību.
|
||||
|
||||
/* Lai gan spēle neizmanto mākoņpakalpojumus datu uzglabāšanai vai
|
||||
analīzei, CI/CD cauruļvads nodrošina, ka atjauninājumus un jaunas funkcijas var
|
||||
izvietot efektīvi un droši. Šāda konfigurācija ļauj ātri veikt iterāciju un
|
||||
nepārtraukti uzlabot spēli, nodrošinot, ka spēlētājiem vienmēr ir pieejama
|
||||
jaunākā versija ar jaunākajiem uzlabojumiem un kļūdu labojumiem. */
|
||||
|
||||
== Darījumprasības
|
||||
Sistēmas izstrādē galvenā uzmanība tiks pievērsta sekojošu darījumprasību
|
||||
īstenošanai, lai nodrošinātu stabilu un saistošu lietotāja pieredzi:
|
||||
|
||||
+ Spēles progresēšana un līmeņu pārvaldība: Sistēma automātiski pārvaldīs spēlētāju virzību pa spēles līmeņiem, nodrošinot vienmērīgu pāreju, kad spēlētāji progresē un saskaras ar jauniem izaicinājumiem.
|
||||
Progress tiks saglabāts lokāli spēlētāja ierīcē.
|
||||
+ Nevainojama piekļuve spēlēm: Spēlētāji varēs piekļūt spēlei un spēlēt to bez nepieciešamības izveidot lietotāja kontu vai pieteikties. Tas nodrošina netraucētu piekļuvi spēlei, ļaujot spēlētājiem nekavējoties sākt spēlēt.
|
||||
// + Paziņošanas sistēma: Spēlētāji saņems paziņojumus par svarīgiem spēles atjauninājumiem, sasniegumiem un citu svarīgu informāciju, lai saglabātu viņu iesaisti un informētību.
|
||||
+ Savietojamība ar vairākām platformām: sistēma būs pieejama vairākās platformās, tostarp Linux, macOS, Windows un WebAssembly, nodrošinot plašu pieejamību un sasniedzamību.
|
||||
+ Kopienas iesaiste: Spēle izmantos #link("http://itch.io/")[itch.io] kopienas funkcijas, lai sadarbotos ar spēlētājiem, apkopotu atsauksmes un veicinātu atbalstošu spēlētāju kopienu.
|
||||
+ Regulāri atjauninājumi un uzturēšana: CI/CD _pipeline_ veicinās regulārus atjauninājumus un uzturēšanu, nodrošinot, ka spēle ir atjaunināta ar jaunākajām funkcijām un uzlabojumiem.
|
||||
|
||||
== Sistēmas lietotāji
|
||||
Sistēma ir izstrādāta, ņemot vērā vienu lietotāja tipu -- spēlētājs. Spēlētāji
|
||||
ir personas, kas iesaistās spēlē, lai pārvietotos pa tās labirinta struktūrām.
|
||||
Tā kā spēlei nav nepieciešami lietotāja konti vai autentifikācija, visiem
|
||||
spēlētājiem ir vienlīdzīga piekļuve spēles funkcijām un saturam no spēles sākuma
|
||||
brīža.
|
||||
|
||||
/* "Sistēma" lietotājs ir atbildīgs par notikumu apstrādātāju izsaukšanu, kas
|
||||
nepieciešams automātiskai spēles gaitas pārvaldībai. */
|
||||
|
||||
Ar lietotājiem saistītās datu plūsmas ir attēlotas sistēmas nultā līmeņa DPD
|
||||
(skat. @fig:dpd-0 att.)
|
||||
|
||||
#figure(
|
||||
caption: "0. līmeņa DPD",
|
||||
image("assets/images/dpd/dpd0.jpg"),
|
||||
) <dpd-0>
|
||||
|
||||
== Vispārējie ierobežojumi
|
||||
+ Izstrādes vides un tehnoloģijas ierobežojumi:
|
||||
+ Programmēšanas valodas un Bevy spēles dzinēja tehniskie ierobežojumi;
|
||||
+ Responsivitāte;
|
||||
+ Starpplatformu savietojamība: Linux, macOS, Windows un WebAssembly.
|
||||
// + Izplatīšanas un izvietošanas ierobežojumi:
|
||||
// + CI/CD _pipeline_.
|
||||
|
||||
== Pieņēmumi un atkarības
|
||||
|
||||
// Constraints
|
||||
@ -115,6 +184,11 @@ pārvaldāms, nodrošinot strukturētu ceļu projekta mērķu sasniegšanai. */
|
||||
|
||||
= Programmatūras prasību specifikācija
|
||||
== Funkcionālās prasības
|
||||
#figure(
|
||||
caption: "1. līmeņa DPD",
|
||||
image("assets/images/dpd/dpd1.jpg"),
|
||||
) <dpd-1>
|
||||
|
||||
== Nefunkcionālās prasības
|
||||
=== Veiktspējas prasības
|
||||
==== Statiskā veiktspēja
|
||||
@ -143,75 +217,10 @@ pārvaldāms, nodrošinot strukturētu ceļu projekta mērķu sasniegšanai. */
|
||||
=== Navigācija
|
||||
=== Ekrānskati
|
||||
|
||||
#heading(
|
||||
numbering: none,
|
||||
"Izmantotā literatūra un avoti",
|
||||
#bibliography(
|
||||
title: "Izmantotā literatūra un avoti",
|
||||
"bibliography.yml",
|
||||
)
|
||||
|
||||
+ #hyperlink-source(
|
||||
[Institūcija "Latvijas standarts".],
|
||||
[LVS 68:1996 "Programmatūras prasību specifikācijas ceļvedis". 1996, marts.],
|
||||
"",
|
||||
datetime(
|
||||
year: 2023,
|
||||
month: 11,
|
||||
day: 20,
|
||||
),
|
||||
)
|
||||
|
||||
+ #hyperlink-source(
|
||||
[Institūcija "Latvijas standarts".],
|
||||
[LVS 72:1996 PPS "Ieteicamā prakse programmatūras projektējuma aprakstīšanai". 1996, marts.],
|
||||
"",
|
||||
datetime(
|
||||
year: 2024,
|
||||
month: 11,
|
||||
day: 04,
|
||||
),
|
||||
)
|
||||
|
||||
+ #hyperlink-source(
|
||||
"", // TODO:
|
||||
"Hexagonal Grids from Red Blob Games.",
|
||||
"https://www.redblobgames.com/grids/hexagons/",
|
||||
datetime(
|
||||
year: 2024,
|
||||
month: 09,
|
||||
day: 10,
|
||||
)
|
||||
)
|
||||
|
||||
+ #hyperlink-source(
|
||||
"", // TODO:
|
||||
"Power-up.",
|
||||
"https://en.wikipedia.org/wiki/Power-up",
|
||||
datetime(
|
||||
year: 2024,
|
||||
month: 11,
|
||||
day: 04,
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
+ #hyperlink-source(
|
||||
"", // TODO:
|
||||
"Unofficial Bevy Cheat Book.",
|
||||
"https://bevy-cheatbook.github.io/",
|
||||
datetime(
|
||||
year: 2024,
|
||||
month: 09,
|
||||
day: 10,
|
||||
),
|
||||
)
|
||||
|
||||
+ #hyperlink-source(
|
||||
"Bevy piemēri.",
|
||||
"Bevy Examples",
|
||||
"https://bevyengine.org/examples/",
|
||||
datetime(
|
||||
year: 2024,
|
||||
month: 09,
|
||||
day: 10,
|
||||
),
|
||||
)
|
||||
|
||||
#pagebreak()
|
||||
#todo[#total-words words]
|
||||
|
||||
Loading…
Reference in New Issue
Block a user