6
votes

Portant mon application C ++ pour exécuter dans un navigateur

Y a-t-il un moyen facile de porter une application C ++ OpenGL à un navigateur? Il est déjà porté à PC, Mac et iOS. si il y a un moyen relativement facile, cela serait portable entre navigateurs informatiques? Je devrais utiliser différents binaires pour différentes plates-formes, bien sûr. Je me souviens d'avoir entendu quelque chose à propos de certains environnements de sandbox pour chrome il y a quelque temps, mais cela exclurait les autres navigateurs. Comment ont-ils (id?) Faire avec le tremblement de terre dans le navigateur?


2 commentaires

WebGL est ce que je pense que vous parlez.


Le sandbox for chrome s'appelle client natif .


4 Réponses :


4
votes

Si vous ciblez déjà ES 2.0 pour iOS, vos shaders devraient fonctionner comme avec Webgl . JavaScript Ahoy!

ID Software utilise un Plugin géant pour la vie à la tremblement de terre.


0 commentaires

2
votes

Essayez le client de Google ou NaCL < / a>, si vous voulez un port paresseux.

Mais si vous voulez faire un port réel - Reportez-vous à ces deux exemples:

  • Série de blog sur le jeu existant C ++ existant à HTML5 (sponsorisé par Opera)
  • Article abrégé sur le portage du jeu Objective-C existant à HTML5 (sponsorisé par Microsoft).
  • exemple triste de portage populaire Jeu du droit d'auteur de C à JavaScript (sponsorisé par Mozilla, avec une aide supplémentaire de Zenimax )

    Si vous demandiez à propos de Quakelive - c'est un plugin personnalisé, fait par logiciel ID. Des fonctionnalités similaires peuvent être obtenues avec des plugins Flash ou Unity.


0 commentaires

1
votes

Y a-t-il un moyen facile de porter une application C ++ OpenGL à un navigateur? Il est déjà porté à PC, Mac et iOS. S'il y a un moyen relativement facile, cela serait-il portable entre les navigateurs informatiques?

Vous pouvez essayer de le recompiler dans JavaScript, c'est ce que les navigateurs exécutent. Si vous ne vous attendez pas à ce que l'utilisateur installe un plugin de navigateur, vous ne pouvez pas leur donner de code natif. Bien sûr, dans un environnement JavaScript, de nombreuses choses que vous êtes habitués à des exécutables natifs ne fonctionnent pas. Pour des exemples, vous ne pouvez plus accéder à un système de fichiers. Vous devez utiliser un stockage DOM, des cookies, des ressources de téléchargement / téléchargement d'un serveur.


2 commentaires

Support JavaScript OpenGL ces jours-ci?


@ Jonasbyström: Oui, ça s'appelle Webgl. Voici quelques démos: chromeExperiments.com/webgl



2
votes

Vous pouvez utiliser Mandreel si vous voulez le moins de travail. Une autre option est EMSCRIPTEN mais qui ne convertit que votre C ++, il ne fournit pas toutes les API comme Mandreel Est-ce que.


0 commentaires