Librairie de jeu vidéo simple - cegepmv/420-411 GitHub Wiki
Dans l'optique de faire un jeu dans avec un temps limité, voici une section de documentation pour vous aidez à faire le jeu en Javascript. Pour se faire, PixiJS est mon choix de librairie pour vous montrer quelques trucs pour faire un jeu simple.
Il n'est pas nécessaire d'avoir un serveur d'application pour l'exécuter contrairement à certain de ses concurrents.
https://pixijs.com/8.x/guides/basics/architecture-overview
https://pixijs.com/8.x/guides/basics/getting-started
<script src="https://pixijs.download/release/pixi.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/pixi.min.js"></script>Déterminer la configuration de base de votre jeu, la résolution de l'écran du jeu.
const app = new PIXI.Application({ width: resolutionX, height: resolutionY, backgroundColor: 0x1099bb });
Si vous développez en html sans React:
<div id="pixi-container"></div>
Avec l'exemple de React fournit dans le cours:
const canvasRef = React.useRef(null);
...
<div style={{ display: 'flex', justifyContent: 'center' }}>
<canvas ref={canvasRef}></canvas>
</div>
Ajouter les librairies après le div.
document.getElementById('pixi-container').appendChild(app.view);
https://github.com/Alan01252/pixi-tilemap-tutorial
Charger avec un promise l'image à l'aide de Asserts.load.
const texturePromise = PIXI.Assets.load('img/imgGround.png'); texturePromise.then((resolvedTexture)=> {
sprite.x = 20; sprite.y = 30;
Voir le projet React Native:
https://github.com/420-411-MV/cls411-manette1
- Transférer le code de votre application sur le serveur via une commit et push. L'automatisation du déploiement se déroule dans Jenkins pour le cours actuel.
- Créer l'application dans la console (fait par le professeur). https://cast.google.com/publish/#/overview
- Publier l'application (bouton publish, fait par le professeur).
- Ajouter la librairie de chromecast receiver dans votre html après votre fichier javascript (mettre defer après la src du script si du html doit être chargé avant le javascript. Voir aussi type="module").
<script type="text/javascript" src="https://www.gstatic.com/cast/sdk/libs/caf_receiver/v3/cast_receiver_framework.js"></script>
- Créer le context du receiver.
const context = cast.framework.CastReceiverContext.getInstance();
- Copier la constante contenant le nom de votre canal de communication (namespace).
const CHANNEL = 'urn:x-cast:testChannel';
- Ajouter une méthode de rappel (callback) pour le canal en question.
context.addCustomMessageListener(CHANNEL, handleMessageFromSender);
Voir https://developers.google.com/cast/docs/reference/web_receiver/cast.framework.CastReceiverContext
- Dans la méthode de rappel, ajuster les coordonnées de votre joueur (ou autre).
- Démarrer le context avec les options.
const options = new cast.framework.CastReceiverOptions();
Voir documentation: https://developers.google.com/cast/docs/reference/web_receiver/cast.framework.CastReceiverOptions
...
context.start(options);
- Déployer le code sur le serveur.
- Ajoutez le appId dans le client pour commencer le test.
- Testez le jeu avec la configuration minimale sans objet connecté.
- Testez le contrôle avec l'objet connecté.
- Ajoutez des fonctionnalités à votre jeu.
- Commitez vos changement à chaque étape validée (test fonctionnel).