From 5df89aad65f96eca967910ecb749e11b7a1ad064 Mon Sep 17 00:00:00 2001 From: gltron Date: Tue, 19 Apr 2022 19:35:33 +0200 Subject: [PATCH] Added posts & fixed pages --- raws/projets/2022-01-01_quiz.md | 15 +++++++++++++ raws/projets/2022-02-01_impact.md | 15 +++++++++++++ resources/img/projets/impact_logo.webp | Bin 0 -> 9424 bytes resources/img/projets/quiz_logo.webp | Bin 0 -> 1294 bytes resources/js/main.js | 28 ++++++++++++++----------- templates/base.hbs | 2 -- templates/landing.hbs | 7 +++---- templates/menu.hbs | 5 ++--- 8 files changed, 51 insertions(+), 21 deletions(-) create mode 100644 raws/projets/2022-01-01_quiz.md create mode 100644 raws/projets/2022-02-01_impact.md create mode 100644 resources/img/projets/impact_logo.webp create mode 100644 resources/img/projets/quiz_logo.webp diff --git a/raws/projets/2022-01-01_quiz.md b/raws/projets/2022-01-01_quiz.md new file mode 100644 index 0000000..8b49ea0 --- /dev/null +++ b/raws/projets/2022-01-01_quiz.md @@ -0,0 +1,15 @@ +--- +title: Out Of Quiz +tags: rust vanillaJS jeu +date: 2022-01-01 +yearonly: true +url: quiz.html +--- + +![Logo of Out Of Quiz](/img/projets/quiz_logo.webp) + +git: [git.gltronic.ovh/gltron/OutOfQuiz](https://git.gltronic.ovh/gltron/OutOfQuiz) + +app: [quiz.gltronic.ovh](https://quiz.gltronic.ovh/) + +Out Of Quiz est un jeu multijoueur de type quiz de vitesse, basé sur le Out Of Context d'un serveur Discord diff --git a/raws/projets/2022-02-01_impact.md b/raws/projets/2022-02-01_impact.md new file mode 100644 index 0000000..2fd1741 --- /dev/null +++ b/raws/projets/2022-02-01_impact.md @@ -0,0 +1,15 @@ +--- +title: Deep Impact +tags: vanillaJS jeu +date: 2022-02-01 +yearonly: true +url: impact.html +--- + +![Logo of Deep Impact](/img/projets/impact_logo.webp) + +git: [git.gltronic.ovh/gltron/DeepImpact](https://git.gltronic.ovh/gltron/DeepImpact) + +app: [impact.gltronic.ovh](https://impact.gltronic.ovh/) + +Deep Impact est un missile command musical diff --git a/resources/img/projets/impact_logo.webp b/resources/img/projets/impact_logo.webp new file mode 100644 index 0000000000000000000000000000000000000000..c467147c787190ccb1d6234b96790683c0f70ea6 GIT binary patch literal 9424 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 z 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 E06rgmZvX%Q literal 0 HcmV?d00001 diff --git a/resources/js/main.js b/resources/js/main.js index e6faa35..7abe0b7 100644 --- a/resources/js/main.js +++ b/resources/js/main.js @@ -15,6 +15,7 @@ let incrementer = 0.01; let reverse = false; const rotationSpeed = 0.001; const orbitRadius = 1; +let lastRender = 0 // Helper function setupContainer (container) { @@ -84,8 +85,6 @@ async function initModels() { modelMoon.castShadow = true; modelMoon.receiveShadow = true; scene.add(modelMoon); - - animateScene(); } // Animation @@ -106,17 +105,21 @@ function easeInOut() { }; function animateScene() { + + if ((performance.now() - lastRender) > (1000 / 60)) { + modelPlanet.position.set(1, easeInOut() / 4 + 0.5, 0); + modelPlanet.rotation.y += rotationSpeed; + + // const x = Math.cos(incrementer) * orbitRadius; + // const z = Math.sin(incrementer) * orbitRadius; + modelMoon.position.set(0, 1 - easeInOut() - 2, 0); + modelMoon.rotation.y -= rotationSpeed + 0.01; + + renderer.render(scene, camera); + } + + requestAnimationFrame(animateScene); - - modelPlanet.position.set(1, easeInOut() / 4 + 0.5, 0); - modelPlanet.rotation.y += rotationSpeed; - - // const x = Math.cos(incrementer) * orbitRadius; - // const z = Math.sin(incrementer) * orbitRadius; - modelMoon.position.set(0, 1 - easeInOut() - 2, 0); - modelMoon.rotation.y -= rotationSpeed + 0.01; - - renderer.render(scene, camera); } // Main @@ -124,6 +127,7 @@ export function init() { initScene(); initLights(); initModels(); + animateScene(); } init(); diff --git a/templates/base.hbs b/templates/base.hbs index 84cc492..9cf393d 100644 --- a/templates/base.hbs +++ b/templates/base.hbs @@ -7,7 +7,5 @@ {{> submenu}} {{> article}} -
- \ No newline at end of file diff --git a/templates/landing.hbs b/templates/landing.hbs index d9ed443..3233775 100644 --- a/templates/landing.hbs +++ b/templates/landing.hbs @@ -7,11 +7,10 @@ @@ -22,5 +21,5 @@ - + \ No newline at end of file diff --git a/templates/menu.hbs b/templates/menu.hbs index edada4e..5d4b7c1 100644 --- a/templates/menu.hbs +++ b/templates/menu.hbs @@ -2,11 +2,10 @@