Demoscene.fr BBS

Communauté => Productions => Topic started by: Patapom on 05 September 2012 à 10:44:56

Title: Cathédrale WebGL
Post by: Patapom on 05 September 2012 à 10:44:56
Pas vraiment une démo, mais ça reste une prod' :

Elle est de retour ! ♥0♥
Notre cathédrale existe désormais en WebGL dans tous les bons browsers !

N'attendez plus : commencez votre visite ! Et n'oubliez pas: Share if you like it... ;D


(http://patapom.com/topics/WebGL/cathedral/TitleScreen.jpg)
 (http://patapom.com/topics/WebGL/cathedral/intro.html)


(sinon, www.patapom.com (http://www.patapom.com) a aussi été quelque peu rénové)
Title: Re : Cathédrale WebGL
Post by: Elrick on 05 September 2012 à 12:47:57
Ca charge, mais rien à l'écran (sauf les menus).

Firefox 10.0.6 ESR

Code: [Select]
DataView is not defined
http://patapom.com/topics/WebGL/patapi/webgl.js
Line 401
en boucle
Title: Re : Cathédrale WebGL
Post by: wullon on 05 September 2012 à 13:15:55
Génial, avec la musique d'Avalon en +. Je tweete direct :D.
Title: Re : Cathédrale WebGL
Post by: Stef on 05 September 2012 à 21:30:05
Je partage aussi. C excellent :)
Title: Re : Cathédrale WebGL
Post by: kaneel on 06 September 2012 à 00:21:24
Bien ouej et ça passait sur mon macbook pro au taff, je suppose qu'il ya de la magie patapomesque au niveau de l'optim n'est-ce pas ?
Title: Re : Cathédrale WebGL
Post by: Patapom on 06 September 2012 à 10:43:28
Merci guyz.

Kanule :  De la quoi ? Optimisation ? Mouahahaha tu rêves ! ;D Nan c'est juste que ta carte est super puissante c'est tout, les shaders sont pas des masses compliqués alors ça bourrine pas mal. En fait je suis surtout à la ramasse en termes de drawcalls (dans les 700) et tout en JS donc sur des vieilles machines genre dual core, c'est à 100% du CPU. Sinon, je suis épaté par la patate du JS en général, quand on voit tout ce que je lui demande de faire à chaque frame... :o

Par contre, je maintiens mon argument initial comme quoi on ne peut encore pas faire un vrai jeu complet en JS + WebGL. Ou alors un truc très simple... Car là, même avec un culling agressif, la majeure partie de la cathédrale est toujours visible et mes draw calls pourraient peut-être tomber à 500 en moyenne mais pas en dessous. Et puis qui dit culling dit calculs, donc occupation du JS pour ça et c'est moins rapide que de poster tous les draw calls sans se poser de question... Car c'est clairement pas le GPU qui pèche ici.
Bref, avec 700 draw calls par frame (+ animations + update de la hiérarchie) juste pour la partie 3D, il reste à mon avis pas assez de temps pour caler une IA, faire de la physique, etc.

Je parle bien entendu de machines low-end, sur les i7 tout ça tourne plutôt bien et avec le sourire ! C'est peut-être effectivement, enfin, l'avènement de la 3D dans les pages web ?

Cependant, la question principale demeure toujours autant qu'en 2009 : à quoi cela va-t-il servir ???

(perso, en dehors des jeux, je n'en vois toujours pas l'utilité)
Title: Re : Re : Cathédrale WebGL
Post by: Elrick on 06 September 2012 à 11:15:36
Cependant, la question principale demeure toujours autant qu'en 2009 : à quoi cela va-t-il servir ???

(perso, en dehors des jeux, je n'en vois toujours pas l'utilité)

visite virtuelle dans l'immobilier ? sur va sur leboncoin du futur et tu visite en direct l'appartement que t'a envie d'acheter (et merde je viens de me faire piquer mon idée ...)
Title: Re : Cathédrale WebGL
Post by: Patapom on 06 September 2012 à 12:20:46
visite virtuelle dans l'immobilier ? sur va sur leboncoin du futur et tu visite en direct l'appartement que t'a envie d'acheter (et merde je viens de me faire piquer mon idée ...)
Hum, tout le monde essaie effectivement de faire ça. Ou des présentations de bagnoles, en se disant que ça va plaire si on "vend ça aux constructeurs"...
La vérité c'est que ça sera supporté pas sur tous les browser, que tes clients vont te demander que ça tourne partout et tu pourras jamais leur garantir, à moins de faire une version pourrave en flash. Du coup ça signifie doubler la chaîne de prod', ça devient ingérable et tu peux plus rien faire d'intéressant...
En gros, tant que c'est encore expérimental et pas supporté partout, tu peux absolument pas faire d'application commerciale avec. Et c'est utopique de miser sur la future bonne volonté de Microsoft pour implémenter HTML5+WebGL en respectant la norme !

Non, y a vraiment que des jeux ou des bannières de pub qui vaudront la peine. Ce qui peut être sympa (pour les jeux) car, de la même manière que les jeux flash font installer flash aux gens, là des jeux webgl pourraient inciter les gens à changer leur IE pourrave vers un FF ou un Chrome !

Et Microsoft perdraient encore davantage de parts de marchés, et le monde serait plus beau ! ;D

(Et quand ils tomberont à < 1% de part de marché, LA, ça vaudra le coup de faire des apps commerciales !)
Title: Re : Cathédrale WebGL
Post by: flngr on 05 December 2012 à 11:04:24
pendant ce temps là, ceux qui n'aiment pas WebGL font du https://developers.google.com/native-client/dev/devguide/coding/3D-graphics
Title: Re : Cathédrale WebGL
Post by: Patapom on 05 December 2012 à 13:50:54
Ouais, Native Client c'est cool mais là ça restreint le parc encore +, on est que sur du Chrome...
Title: Re : Cathédrale WebGL
Post by: Vince on 10 December 2012 à 11:10:46
Pas mal du tout, ça tourne bien, j'aime bien tes shaders pour les vitraux.
Par contre un point qui m'étonne, 700 drawcalls ? Ca m'a l'air énorme pour la taille de la cathédrale, autant fusionner les meshs si tu fais du calling agressif (en GPU ?) non ?

Sinon -1 pour Native Client de Chrome, on veut un truc portable sous tous navigateurs, pas un langage propriétaire (sinon autant rester sur IE avec ActiveX).

La seule chose chiante, comme dans la plupart des démos webgl, c'est le chargement :p

Beau travail en tout cas Patapom !
Title: Re : Cathédrale WebGL
Post by: Patapom on 10 December 2012 à 12:28:21
Merci. Mais d'où tu sais qu'il y a 700 draw calls ? Tu m'espionnes ? >:(

Huhu, sinon dans mes souvenirs c'était pas un seul mesh à cause de mon renderer de global illumination en spherical harmonics. J'avais voulu faire le malin et rendre le calcul distribué sur plusieurs machines, chaque machine calculant son secteur et chaque secteur échangeant les flux lumineux avec son voisin...
En même temps, pourquoi pas séparer par secteur plutôt que 700 objets me direz-vous ? Bonne question. En fait, je crois que le fin mot de l'histoire c'est que mon pote graphiste a tout modélisé par instances et que moi derrière j'ai pas du tout exploité l'instanciation... Parce que je suis feignant. ;D
Title: Re : Re : Cathédrale WebGL
Post by: Vince on 10 December 2012 à 13:13:10
Merci. Mais d'où tu sais qu'il y a 700 draw calls ? Tu m'espionnes ? >:(
Oui je suis un espion dans l'âme \o/
->
Kanule :  De la quoi ? Optimisation ? Mouahahaha tu rêves ! ;D Nan c'est juste que ta carte est super puissante c'est tout, les shaders sont pas des masses compliqués alors ça bourrine pas mal. En fait je suis surtout à la ramasse en termes de drawcalls (dans les 700) et tout en JS donc sur des vieilles machines genre dual core, c'est à 100% du CPU. Sinon, je suis épaté par la patate du JS en général, quand on voit tout ce que je lui demande de faire à chaque frame... :o

He he, la flemme je connais ça :p
Bon rendu dans tous les cas, et ça me permet de voir que l'utilisation d'autant de drawcall n'a pas l'air d'impacter le framerate (ce qui va peut être me servir à virer une fusion de géométrie + texture atlas dans un de mes projets)
Title: Re : Cathédrale WebGL
Post by: Patapom on 10 December 2012 à 13:59:34
Han, ok, je l'avais écrit. Silly me...

Bah après, ça dépend de quel genre de scène il s'agit. JS est vraiment super puissant mais si tu passes tout ton temps à dessiner des trucs, il te reste plus rien pour le gameplay, et c'est bien l'inconvénient de WebGL par rapport à O3D...
Title: Re : Cathédrale WebGL
Post by: Vince on 10 December 2012 à 14:42:38
Oui du natif est forcément plus réactif que du JS pour faire du jeu, mais il faut faire avec ce qu'on a, webgl a plus d'avenir qu'O3D (il était pas abandonné d'ailleurs ?) et est une bonne plateforme pour le jeu (sauf quand c'est un jeu blindé physique, Javascript à un peu de mal avec ça...).

Là je me pose surtout la question si ce n'est pas plus efficace de faire du culling dans une autre thread et afficher juste les objets visibles sur l'écran plutôt que de tout envoyer au GPU et qu'il se démerde avec le tout (chose que j'ai toujours faite jusqu'à présent, car je suis un flemmard qui fait confiance à sa carte graphique).

Bref, benchmark <3 (ya qu'en JS qu'on est obligé de tout benchmark...).


Pour en revenir au sujet, c'était une compo pour le fun ? Ou bien c'est la visualisation en ligne de la cathédrale de MachinChose pour leur site web ? :)
Title: Re : Cathédrale WebGL
Post by: Patapom on 10 December 2012 à 15:49:17
On avait fait ça avec un pote après la mort de notre boîte, c'était l'époque où O3D décollait et on se disait naïvement qu'avec Google derrière, ça pouvait pas foirer... ;D
C'était purement pour voir ce qu'on pouvait faire avec la techno, j'avais bien bossé sur plein d'outils et tout, mais l'engouement pour la 3D dans les pages web était plutôt à zéro. Même maintenant, je sais toujours pas bien à quoi ça peut servir à part pour faire joli.

Un projet que j'aimerais vraiment réaliser un jour c'est un monde persistant dans lequel t'aurais tous tes trucs : tu ouvres ton browser et en fait tu te retrouves dans ton village à la Zelda, avec ta communauté d'amis. Pis t'aurais tous les services web habituels, mail, facebook, jeux, news, vidéos dans des endroits 3D dédiés, le tout online et connecté en permanence... Limite une sorte de minecraft où les gens construisent leur propre communauté, leurs propres environnements...

Pis tu prends ton dragon/jetpack et tu te rends sur l'île des jeux si t'as envie de jouer (chaque bâtiment est comme une caravane de fête foraine, tu entres et tu joues à un jeu), etc.

Ca pourrait être bien marrant... Mais tellement de taf que bon...
Title: Re : Cathédrale WebGL
Post by: ponce on 10 December 2012 à 17:34:31
@patapom: c'est clair que tant que MS est pas derrière WebGL ca risque pas d'être la revolucione

Ca me semble plus ou moins plausible que la prochaine génération de site social envahissant soit en gros un jeu vidéo.
Si il permet de s'échanger des liens, des photos et regarder des vidéos, et jouer a des jeux, pourquoi pas ? Voir ouvrir des <iframe> arbitraire :)

Par exemple le principe d'IRC marche bien avec ses salons, à côté jabber ou facebook chat on peut pas découvrir des cercles.
Ensuite les gens veulent faire des choses online ensemble et pas juste commenter des photos et loler.

Si ca arrive j'espère que les gens ne mettront pas leurs vrais noms...

(à mon avis le succès de ce genre d'univers dépendra en grande partie de en gros "est-ce qu'on peut regarder la télé dedans")
Title: Re : Cathédrale WebGL
Post by: Vince on 11 December 2012 à 12:11:33
J'ai déjà pensé à ça aussi, mais ça demande un boulot monstre et surtout de ne pas trop s'éparpiller dans tout ce qu'il y a à faire.
Le problème sera également de pouvoir charger "un monde" rapidement (chiant si l'utilisateur doit charger plusieurs dizaines de mégas juste pour rentrer dans une maison pour lire ses mails lol).

Après c'est la connexion entre les divers éléments qui risque de se compliquer, rendre le résultat fluide et compréhensible.
J'imagine aussi le mode "inception": lancer le jeu sur le site, aller dans la maison qui affiche le site pour lancer le jeu pour aller dans la maison qui affiche le site pour... iframe dans iframe dans iframe dans... <3
Title: Re : Cathédrale WebGL
Post by: Patapom on 11 December 2012 à 13:59:20
Bah après si c'est du minecraft ou autre, charger un cube et une texture de 16x16 je pense que ça peut se faire rapidement... ^^
Title: Re : Re : Re : Cathédrale WebGL
Post by: moudubou on 29 April 2013 à 08:43:55
visite virtuelle dans l'immobilier ? sur va sur leboncoin du futur et tu visite en direct l'appartement que t'a envie d'acheter (et merde je viens de me faire piquer mon idée ...)

Vu le niveau désastreux des annonces immobilières en France, je pense que tu peux te lancer.

Bah après si c'est du minecraft ou autre, charger un cube et une texture de 16x16 je pense que ça peut se faire rapidement... ^^

Pour faire des visites virtuelles, à partir d'une photo sphérique projetée sur un cube, c'est génial et ça bouffe peu de ressources, y a plus à avoir Flash dans les pattes, ni Java!


Title: Re : Cathédrale WebGL
Post by: MsK` on 29 April 2013 à 23:37:36
ni même WebGL en fait...
Title: Re : Cathédrale WebGL
Post by: Marvin on 05 September 2013 à 15:58:14
magnifique