HTML5 游戏开发 之 资源加载篇(2)
四) 下载过程的管理<br> <br> 4.1) 如何管理成千上百的资源<br> <br> 在游戏开发的过程中,很有可能会有成千上百张图片。最直接的方式,是将这些图片编写在代码中,但是图片的名字很容易改变的,会造成大量的维护工作,甚至影响代码的打包和发布。我的同事Boris,在他的代码演示库中,给出了一个参考实现方式,如下。这种方式,可以保证,在需要修改或者调整资源名称或者路径的时候,不需要接触代码。<br> <br>
- {<br>
- "assetRoot": "url/to/assets",<br>
- "bundles": [<br>
- {<br>
- "name": "unique bundle name",<br>
- "contents": [<br>
- "relative/path/to/asset.jpg",<br>
- "another/asset.mp3"<br>
- ]<br>
- },<br>
- "autoDownload": true<br>
- }<br>
- var gal = new GameAssetLoader("http://path.to/gal.manifest");<br>
- // Load the GAL. If manifest indicates autoDownload, this call will<br>
- // start loading assets one by one.<br>
- gal.init(function() {<br>
- // Called when the library is initialized<br>
- });
- AssetManager.prototype.downloadAll = function(downloadCallback) {<br>
- for (var i = 0; i
- var path = this.downloadQueue[i];<br>
- var img = new Image();<br>
- var that = this;<br>
- img.addEventListener("load", function() {<br>
- // coming soon<br>
- }, false);<br>
- img.addEventListener("error", function() {<br>
- // coming soon<br>
- }, false);<br>
- img.src = path;<br>
- }<br>
- }<br>
<br>
Copier après la connexion- 下载的过程中,一般情况下都需要一个进度条,来显示完成的情况,所以必须对AssetManager进行计数。<br>
- <br>
- <br>
<br>
Copier après la connexion- function AssetManager() {<br>
- this.successCount = 0;<br>
- this.errorCount = 0;<br>
- this.downloadQueue = [];<br>
- }<br>
- <br>
- AssetManager.prototype.isDone = function() {<br>
- return (this.downloadQueue.length == this.successCount + this.errorCount);<br>
- }<br>
- AssetManager.prototype.getProcess = function() {<br>
- return (this.successCount + this.errorCount)/this.downloadQueue.length;<br>
- }
- img.addEventListener("load", function() {<br>
- that.successCount += 1;<br>
- if (that.isDone()) {<br>
- downloadCallback();<br>
- }<br>
- }, false);<br>
- img.addEventListener("error", function() {<br>
- that.errorCount += 1;<br>
- if (that.isDone()) {<br>
- downloadCallback();<br>
- }<br>
- }, false

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds



L'article discute de l'utilisation de balises Meta pour contrôler la mise à l'échelle des pages sur les appareils mobiles, en se concentrant sur des paramètres tels que la largeur et l'échelle initiale pour une réactivité et des performances optimales. COMMANDE: 159

Cet article détaille la création de jeux HTML5 interactifs à l'aide de JavaScript. Il couvre la conception de jeux, la structure HTML, le style CSS, la logique JavaScript (y compris la gestion des événements et l'animation) et l'intégration audio. Bibliothèques JavaScript essentielles (Phaser, Pi

Cet article explique comment intégrer l'audio dans HTML5 en utilisant l'AUDIO & GT; Element, y compris les meilleures pratiques pour la sélection du format (MP3, Ogg Vorbis), l'optimisation des fichiers et le contrôle JavaScript pour la lecture. Il met l'accent sur l'utilisation de plusieurs audio F

L'article discute de l'utilisation de l'API de visibilité de la page HTML5 pour détecter la visibilité de la page, améliorer l'expérience utilisateur et optimiser l'utilisation des ressources. Les aspects clés comprennent la pause des supports, la réduction de la charge du processeur et la gestion de l'analyse en fonction des changements de visibilité.

L'article traite de la gestion de la confidentialité de l'emplacement des utilisateurs et des autorisations à l'aide de l'API Geolocation, mettant l'accent sur les meilleures pratiques pour demander des autorisations, assurer la sécurité des données et se conformer aux lois sur la confidentialité.

Cet article explique comment créer et valider les formulaires HTML5. Il détaille le & lt; formulaire & gt; élément, types d'entrée (texte, e-mail, numéro, etc.) et attributs (requis, modèle, min, max). Les avantages des formes HTML5 sur les méthodes plus anciennes, incl

L'article explique comment utiliser l'API HTML5 Drag and Drop pour créer des interfaces utilisateur interactives, détaillant les étapes pour rendre les éléments dragables, gérer les événements clés et améliorer l'expérience utilisateur avec des commentaires personnalisés. Il discute également des pièges communs à un

Cet article explique l'API HTML5 WebSockets pour la communication client-serveur bidirectionnelle en temps réel. Il détaille les implémentations côté client (JavaScript) et côté serveur (Python / Flask), résolvant des défis tels que l'évolutivité, la gestion de l'état, un
