finish presentation

This commit is contained in:
Kristofers Solo 2025-01-13 23:33:38 +02:00
parent 7f7314de81
commit 9262f98e19
21 changed files with 77 additions and 48 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 138 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 66 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 79 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 68 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 33 MiB

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 950 B

After

Width:  |  Height:  |  Size: 952 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 42 MiB

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 31 MiB

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 84 MiB

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 986 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 MiB

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 974 B

After

Width:  |  Height:  |  Size: 983 B

View File

@ -4,7 +4,7 @@
#import "@preview/fletcher:0.5.3" as fletcher: node, edge #import "@preview/fletcher:0.5.3" as fletcher: node, edge
#import "@preview/ctheorems:1.1.3": * #import "@preview/ctheorems:1.1.3": *
#import "@preview/numbly:0.1.0": numbly #import "@preview/numbly:0.1.0": numbly
#import "src/diagrams.typ": *
#set text( #set text(
font: ( font: (
@ -62,7 +62,6 @@
author: [Kristiāns Francis Cagulis kc22015], author: [Kristiāns Francis Cagulis kc22015],
date: [2025], date: [2025],
institution: [Latvijas Universitāte], institution: [Latvijas Universitāte],
// logo: emoji.school,
), ),
config-colors( config-colors(
primary: rgb("#575279"), primary: rgb("#575279"),
@ -75,14 +74,13 @@
#title-slide() #title-slide()
#slide[ #slide[
= Pārskats = Pārskats
- Entitāšu komponenšu sistēma (ECS) - Entitāšu komponenšu sistēma (ECS)
- Spēles pārskats un funkcijas - Maze Ascension
- Hexlab bibliotēka - Hexlab bibliotēka
- Tehniskā demonstrācija - Sešstūru implementācija
- Saskarne
- Rezultāti un secinājumi - Rezultāti un secinājumi
] ]
@ -166,43 +164,41 @@
``` ```
} }
= Maze Ascension = Maze Ascension
== Spēles pārskats
#grid( == 1. Līmeņa DPD
columns: 2,
gutter: 1em, #figure(
[ image("assets/images/diagrams/dpd1.png"),
- Procedurāli ģenerēta spēle ar sešstūrainu labirintu
- Procedurāli ģenerēti līmeņi
- Izstrādāts ar Bevy spēles dzinēju
- Labirintu ģenerēšanas bibliotēka
],
image("assets/images/placeholder.jpg"),
) )
== Spēles funkcionalitāte == Stāva modulis
#grid( #figure(
columns: 2, image("assets/images/diagrams/floor.png", width: 50%),
gutter: 1em,
[
- Izveidots, izmantojot Bevy spēļu dzinēju
- Pielāgota labirintu ģenerēšanas bibliotēka
- Procedurāla līmeņu ģenerēšana
- Dinamiska grūtības pakāpes mainīšana
],
image("assets/images/placeholder.jpg"),
) )
= Hexlab bibliotēka = Hexlab bibliotēka
#pagebreak() #pagebreak()
#figure( #figure(
caption: link("https://crates.io/crates/hexlab"), caption: link("https://crates.io/crates/hexlab"),
image("assets/images/crates/hexlab.png", height: 92%), image("assets/images/crates/hexlab.png", height: 92%),
) )
== Labirinta ģenerēšanas funkcijas projektējums
#grid(
columns: (1fr, 1fr),
figure(
image("assets/images/diagrams/maze-gen.png"),
),
figure(
image("assets/images/diagrams/recursive.png"),
),
)
== Ģenerēšanas algoritms == Ģenerēšanas algoritms
// recursive backtracking // recursive backtracking
#figure( #figure(
@ -211,16 +207,6 @@
) )
= Sešstūru implementācija = Sešstūru implementācija
== Iedvesma
#figure(
caption: link("https://www.redblobgames.com/grids/hexagons/"),
grid(
columns: 2,
figure(image("assets/images/redblogmages/axial-coords.png", height: 92%)),
figure(image("assets/videos/coords/coords.gif", height: 92%)),
),
)
== Attēlošana == Attēlošana
#grid( #grid(
@ -238,32 +224,64 @@
) )
= Saskarne = Saskarne
== foo #pagebreak()
#lorem(10)
#grid(
columns: 2,
figure(
image("assets/images/game/main-menu.png"),
),
)
#figure(
image("assets/videos/game/maze-game.gif"),
)
#grid(
columns: (1fr, 1fr),
figure(
image("assets/images/game/debug.png"),
),
figure(
image("assets/images/game/dev-tools.png"),
),
)
#figure(
image("assets/videos/game/big-ass-maze.gif"),
)
= Secinājumi = Secinājumi
== Rezultāti == Rezultāti
- Veiksmīgi īstenota procedurālā ģenerēšana.
- Efektīvs labirinta ģenerēšanas algoritms. - 3D spēle izmantojot Bevy un Rust:
- Vienmērīga spēlēšanas pieredze. - Procedurāla sešstūraina labirints ģenerēšana, izmantojot DFS.
- Modulāra un atkārtoti izmantojama kodu bāze. - Izveidota atkārtoti lietojama atvērtā pirmkoda bibliotēka "hexlab".
- Efektīva līmeņa pārvaldība:
- Vienmērīga pāreja starp labirinta līmeņiem.
== Turpmākie darbi == Turpmākie darbi
= Paldies par uzmanību - Īstenot vairāk labirintu ģenerēšanas paņēmienus/algoritmus.
- Ieviest jaunas mehānikas un papildspējas.
- Uzlabot vizuālo kvalitāti un spēlētāja izskatu.
- Izstrādāt daudzspēlētāju režīmu.
= Paldies par uzmanību!
Jautājumi? Jautājumi?
#show: appendix #show: appendix
= Pēcvārds = Galavārds
== ECS vs OOP == ECS vs OOP
#grid( #grid(
columns: (1fr, 1fr), columns: (1fr, 1fr),
gutter: 1em, gutter: 1em,
[ [
*ECS* *ECS*
- Plakanā hierarhija - Plakana hierarhija
- Datu orientēta - Datu orientēta
- Kešatmiņai piemērots - Kešatmiņai piemērots
- Paralēla apstrāde - Paralēla apstrāde
@ -276,3 +294,14 @@ Jautājumi?
- Secīga apstrāde - Secīga apstrāde
], ],
) )
== Iedvesma
#figure(
caption: link("https://www.redblobgames.com/grids/hexagons/"),
grid(
columns: 2,
figure(image("assets/images/redblogmages/axial-coords.png", height: 92%)),
figure(image("assets/videos/coords/coords.gif", height: 92%)),
),
)