« 1 2 3 (4) 5 »


Re: hARMful engine
OverdOzed
Inscrit:
23/02/2006 18:10
De Alpes-Maritimes
Post(s): 2193
Je préfère pas trop prendre de risques pour le moment. A priori, et selon moi, le but de chacun des logiciels (le pro et celui-là) n'est pas du tout le même. Mais je suis une quiche en droit... Je peux toujours me renseigner...

Ce qui est le plus embêtant serait qu'on pense que j'utilise du code que j'ai écrit dans la boîte, et qui appartient donc à la boîte. Même si évidemment, je suis pas assez bête pour ça !
Le seul truc que je vois qui pourrait être commun, ce sont les gizmos. C'est d'ailleurs bien la raison pour laquelle je veux utiliser un lib déjà prête pour ça et ne pas les coder moi-même.

Pour le reste, ce sont des mathématiques nécessaires à la 3D (matrices, vecteurs). Côté appli pro, on utilise un moteur 3D existant dans lequel on ne code rien. On n'est qu'utilisateurs de ce qu'il propose.

Ni le public, ni les plateformes, ni quoique ce soit n'est commun aux deux projets. Mais comme les deux sont considérés comme des éditeurs de scènes 3D, il pourrait y avoir un amalgame...
Ce qui serait stupide en soit, car l'éditeur pro n'est utilisable qu'avec une application développée par ma boîte. Les clients doivent acheter les deux sinon l'éditeur seul ne leur sert à rien. Et mon programme n'a absolument rien à voir en terme de finalités avec tout ça. Mais bon, je préfère pas trop jouer avec le feu !

Techniquement aussi, selon mon contrat, tous mes développements y compris sur mon temps personnel... appartiennent à l'entreprise. Après, j'ai jamais connu de gens qui se sont fait "voler" leurs projets persos mais là encore... prudence.

Je pense le développer dans un premier temps pour m'en servir afin de réaliser mes prochaines démos. Après, je verrai selon la façon dont les choses se goupillent si je peux ou non publier le logiciel.
Pour l'instant, je préfère rester sur un développement et un usage privé.
Bien sûr, je ferai des screenshots et pourquoi pas des vidéos de présentation.

Contribution le : 23/03 23:32:18
Créer un fichier PDF de la contribution Imprimer


Re: hARMful engine
OverdOzed
Inscrit:
19/03/2016 15:30
De Belgique
Post(s): 1525
Probablement pour éviter un éventuel "espionnage industriel", je peux comprendre le principe.

C'est embêtant.

Contribution le : 24/03 09:59:16
Créer un fichier PDF de la contribution Imprimer


Re: hARMful engine
OverdOzed
Inscrit:
23/02/2006 18:10
De Alpes-Maritimes
Post(s): 2193
Oui, ce genre de choses...

Je suis finalement parti sur Qt pour l'UI. Je verrai pour intégrer imGUI dans la vue 3D...

Voici la première fenêtre, celle de l'accueil quand on ouvre l'application.

echange photo anonyme

Cliquer sur le bouton pour commencer un nouveau projet balaie l'écran de droite à gauche et la fenêtre principale viendra donc à ce moment-là, de façon animée (c'est le comportement par défaut, c'est soft et pas trop bling-bling).

L'autre bouton est désactivé pour le moment et servira à charger un projet.

Je sais pas encore à quel rythme je vais travailler sur ce projet, j'aimerais aussi faire un peu de Blender et m'occuper du moteur 3D aussi...
Avec les quelques semaines qu'on va avoir à la maison, y a de quoi s'occuper !

Contribution le : 25/03 19:59:26
Créer un fichier PDF de la contribution Imprimer


Re: hARMful engine
OverdOzed
Inscrit:
19/03/2016 15:30
De Belgique
Post(s): 1525
Ça me semble bien visuellement

Contribution le : 26/03 09:24:14
Créer un fichier PDF de la contribution Imprimer


Re: hARMful engine
OverdOzed
Inscrit:
23/02/2006 18:10
De Alpes-Maritimes
Post(s): 2193
Voici une vidéo pour montrer les avancements de la GUI.
Pour l'instant ça va dans le sens de la maquette donc j'en suis satisfait.

https://streamable.com/2aabl

J'ai pensé à prendre en charge dès le départ le DPI des écrans. C'est ce que j'ai simulé dans la vidéo quand le texte grossit. Evidemment, sur le même écran ça affiche en plus gros. Sur un écran avec une plus grande densité de pixels, ça permettra d'avoir un rendu comparable, j'espère... Je me suis basé sur les valeurs retournées par Qt concernant le DPI de l'écran.

Ça n'avance pas excessivement vite car il me faut définir le thème graphique au fur et à mesure.
Dès que je dois ajouter un élément de GUI (bouton, champ de texte, menu, ...), je redéfinis son style. C'est pas compliqué mais ça demande pas mal d'essai/erreur jusqu'à trouver le bon rendu.

Un autre truc cool, c'est qu'il sera possible de laisser l'utilisateur définir les couleurs pour la GUI. Par exemple, si quelqu'un préfère un thème clair.

Contribution le : 28/03 00:51:06
Créer un fichier PDF de la contribution Imprimer


Re: hARMful engine
OverdOzed
Inscrit:
19/03/2016 15:30
De Belgique
Post(s): 1525
Et tu n'as pas la possibilité de faire des changements en live, du genre mode début ? Ça optimiserai ton temps de travail.

Ou tu dois peut-être le programmer ?

Contribution le : 28/03 08:38:50
Créer un fichier PDF de la contribution Imprimer


Re: hARMful engine
OverdOzed
Inscrit:
23/02/2006 18:10
De Alpes-Maritimes
Post(s): 2193
Si tu parles des ajustements, je ne crois pas. Mais le lancement de l'appli n'est pas long, en fait tout est quasiment fait dans une sorte de JavaScript. Il n'y a donc pas de compilation.

EDIT:
Je vais bosser sur le moteur lui-même en plus de l'éditeur. L'éditeur n'est pas prioritaire pour le moment mais j'avancerai de temps en temps dessus.

Concernant le moteur, j'utilise l'outil NVidia NSight Graphics pour détecter les erreurs OpenGL et ainsi les corriger. Je vais donc faire une première passe sur ces erreurs.
Je verrai pour corriger des bugs ou procéder à quelques améliorations du moteur que j'ai mises de côté pour la release. Après ça, je ferai un nouveau patch de la version 1.0.

Suite à ce patch, je vais attaquer une feature qui me tient particulièrement à coeur. Le support de HDR pour l'éclairage ambiant et aussi le rendu PBR, c'est-à-dire un rendu similaire à celui de EEVEE ou Unity pour ne citer qu'eux. Les anciens shaders (Blinn-Phong) seront encore là mais seront dépréciés : ils pourront être supprimés du code plus tard.

EDIT2: J'ai remplacé libpng et libjpeg-turbo par la bibliothèque stb. Elle simplifie énormément le processus de build (il n'y a plus besoin de libpng ni de libjpeg-turbo, difficiles à trouver sous Windows).
Cerise sur le gateau, elle me permet de supporter plusieurs formats d'images supplémentaires dont les HDR.

Contribution le : 28/03 11:22:55
Créer un fichier PDF de la contribution Imprimer


Re: hARMful engine
OverdOzed
Inscrit:
23/02/2006 18:10
De Alpes-Maritimes
Post(s): 2193
Hello,
Avant d'attaquer le rendu PBR à proprement parler (même si j'ai déjà switché sur la branche "pbr" du git), je fais une passe sur les ombres. Déjà, elles sont très moches. Et ça, c'était parce que j'utilisais pas la bonne fonction dans les shaders !
Elles sont dans ce style si on met une résolution basse :
https://i.stack.imgur.com/jEJFS.png

J'ai donc trouvé une autre fonction pour "lire" une shadow map et là, bingo : j'ai eu une jolie interpolation réalisée par la carte graphique, comme une grande (filtre bilinéaire comme ici).

Donc, voici ce que ça donnait avant :

https://raw.githubusercontent.com/dcarlus/hARMful/master/docs/assets/images/hARMful_big.jpg

Après ça, j'ai pu aussi grâce à cette fonction tester les pixels autour dans la texture et faire une moyenne. Voici le résultat maintenant* :

https://raw.githubusercontent.com/dcarlus/hARMful/pbr/docs/assets/images/hARMful_big.jpg
(* dans la branche pbr et non master)

Il me reste un bug avec les ombres vraiment pénible et qu'il faut corriger avant de prétendre faire du PBR. A certains endroits, elles disparaissent. Je ne sais pas encore à quoi c'est dû.

Contribution le : 01/04 22:12:01
Créer un fichier PDF de la contribution Imprimer


Re: hARMful engine
OverdOzed
Inscrit:
19/03/2016 15:30
De Belgique
Post(s): 1525
Pourquoi Blinn et Phong ne sont plus d'actualité ?

Phong est plus pour l'organique et Blinn les métaux. Je ne comprends pas pourquoi un nouveau système permet de combiner deux choses différentes ?

Contribution le : 03/04 14:37:58
Créer un fichier PDF de la contribution Imprimer


Re: hARMful engine
OverdOzed
Inscrit:
23/02/2006 18:10
De Alpes-Maritimes
Post(s): 2193
C'est ce que tu vois dans Blender 2.7x. En soit, ils font le taf mais maintenant on fait mieux encore ! Comme je suis seul sur le code, je peux pas avoir trop de choses à maintenir car les bugs existent de partout. Donc dès qu'un truc me semble un peu trop obsolète, je l'enlève pour avoir le moins de choses possible.

Dans ce projet, j'utilise les toutes dernières fonctionnalités et versions des dépendances. Dès qu'une de mes dépendances a une MAJ, je prends. J'utilise aussi OpenGL4.6 qui est la toute dernière version dispo. Il me semble logique de faire pareil pour le rendu !

C'est aussi une application du principe KISS auquel j'adhère à 100%. Je cite Wikipédia :
"Il est utilisé comme principe de développement de logiciels, pour rappeler aux développeurs qu'un programme simple est plus facile à maintenir et à comprendre. Dans The New Hacker's Dictionary, ce terme est quelquefois utilisé lors d'un projet de développement logiciel pour éviter la sur-inflation fonctionnelle d'un logiciel (« feature creep » en anglais)."

Enfin, c'est un détail mais pas des moindres : Blender utilise des matériaux PBR dans la 2.8x. Pour faire "fonctionner" mes shaders, je dois bidouiller les textures pour un résultat discutable. Si j'ai une base de PBR également, ça me permettra d'avoir un rendu uniformisé de mes objets texturés entre EEVEE et mon moteur.


Pour la 3D en temps réel, on a commencé par dessiner des objets en fil de fer. On a ensuite commencé à remplir ces surfaces avec des couleurs unies puis l'ombrage plat.
C'est un peu plus tard qu'est apparue l'ombrage de Gouraud qui interpole l'ombrage entre les vertices pour donner un aspect lissé. Comme les géométries de l'époque (années 1970) comptaient peu de points, même les ordinateurs peu puissants parvenait à le gérer.

Encore un peu plus tard (toujours dans les années 70), c'est Phong qui apporte une solution optimisée de l'ombrage de Gouraud. Au lieu de calculer cette interpolation à partir des vertices - donnant lieu à un rendu pas très très beau - on calcule l'ombrage sur les pixels rendus à l'écran. Par contre, il y a bien plus de pixels que de vertices donc cette technique de rendu était à l'époque assez gourmande en calculs.



Blinn apporte une autre amélioration à l'algorithme de Gourand et Phong concernant la spécularité. Blinn-Phong vient remplacer Phong et est utilisé par défaut dans les premières versions d'OpenGL.



On a utilisé Blinn-Phong pendant pas mal d'années depuis que les jeux vidéo en 3D sont apparus (c'était du Gouraud sur PlayStation et Nintendo64, puis on est passés sur du (Blinn-)Phong).


Rendu caractéristique de l'ombrage de Gouraud (Final Fantasy VII - PSOne - 1997).

De nos jours, les ordinateurs sont tellement puissants qu'ils peuvent encaisser des calculs bien plus gourmands en temps réel. C'est là qu'on peut passer à du rendu dit physiquement réaliste. Ici, on oublie les approximations faites pour simuler l'éclairage avec Phong. On calcule les valeurs de "rugosité" (roughness), la métallicité (metalness), etc. Avec ces paramètres on a un rendu très proche du réel de métaux, de plastique, de surfaces organiques, etc. Sans oublier qu'on peut ajouter un élément de taille : l'éclairage par une HDR.



J'espère que tu comprendras mieux mon choix.

Contribution le : 03/04 16:32:06
Créer un fichier PDF de la contribution Imprimer



 Haut   Précédent   Suivant
« 1 2 3 (4) 5 »




Enregistrer votre réponse
Compte*
Nom   Mot de passe   Authentification
Message:*



[Recherche avancée]



Sujets récemment répondus
Forums Sujets Réponses Lus Dernières contributions
Moteur de jeu GameBlender et alternatives [non résolu] système Sid Meyer like (Civilization)    [1][2] 11 508 Aujourd'hui 15:54:44
Bibi09 
Questions & Réponses [non résolu] Problème de SEAM 0 1 Aujourd'hui 15:52:39
kaoponlek 
Questions & Réponses Problème révélé par le Graph Editor 0 11 Aujourd'hui 14:09:06
Horemheb 
[WIP] et travaux terminés Modélisation d'un humain    [1][2] 16 696 Aujourd'hui 13:37:18
Arielboid 
Questions & Réponses [non résolu] Blender LAG    [1][2] 11 84 Aujourd'hui 13:27:02
Vespasien28 
Questions & Réponses L' Addon "Offset edge - extrude" fait planter Blender 0 17 Aujourd'hui 10:48:44
sapajou 
Moteur de jeu GameBlender et alternatives hARMful engine    [1][2][3]...[5] 44 3168 Aujourd'hui 08:08:18
Redstar 
Questions & Réponses problème texture qui s'ajoute au groupement de plusieurs meshes 2 40 Hier 21:08:17
skatekitchen 
Moteur de jeu GameBlender et alternatives [WIP] DeadSigns FPS horreur - Reprise du développement    [1][2][3]...[47] 468 80545 Hier 20:59:49
Bibi09 
Questions & Réponses Mesh qui se déforme avec le mouvement de l'armature    [1][2] 11 79 Hier 20:30:16
Homarus 
[WIP] et travaux terminés [terminé] ANIMATION HELICOPTERE // GUERRE DU VIETNAM    [1][2] 11 884 Hier 20:17:22
ju 
[WIP] et travaux terminés Un canard, avec des plumes. 2 65 Hier 17:17:57
Guppy88 
Questions & Réponses [non résolu] Probléme de mirroir    [1][2][3] 24 198 Hier 12:25:34
Vespasien28 
Questions & Réponses qui maitrise cloth modeling Pour m'aider SVP 0 41 Hier 11:28:50
G-tout-court 
Questions & Réponses [résolu] [Blender 2.8] Sélectionner les keys de TOUTES les actions (rigs+objets) 4 134 Hier 10:24:12
Rimpotche 
Python & Plugins Importer, nommer et hiérarchiser l'anatomie humaine avec un script 0 43 06/04 12:25:29
Melodicpinpon 
The Blender Clan 'tchat [BUG PARIS] RDV en 2020 !    [1][2][3]...[70] 699 182351 06/04 10:44:33
stev 
Questions & Réponses Circle selection ne sélectionne pas plusieurs objets 1 100 05/04 19:23:45
Melodicpinpon 
Graphisme alternatif Un court-métrage apocalyptique en 2D ! 0 58 05/04 18:25:39
Martulen 
Questions & Réponses [résolu] Orientation des normals 6 94 05/04 18:06:30
RHENA 

Qui est en ligne
106 utilisateur(s) en ligne (dont 53 sur Forums)

Membre(s): 4
Invité(s): 102


kaoponlek, lucien25, ebrain, Bibi09, plus...
Nouveaux membres
XJASherita 8/4/2020
Vespasien28 5/4/2020
RHENA 5/4/2020
Cedrazar 5/4/2020
ewaca 3/4/2020
ThierryM 2/4/2020
BlenderGenius 2/4/2020
sophieparisy2020 2/4/2020
jpmalb 2/4/2020
Noisette 2/4/2020
Dernier Ajout
mirages-preview~0.jpg

Evènements à venir
Jui 30
Anniv des Jedi :-D
Jui 11
BUG de Lyon
Jui 23
Anniv du BlenderClan !
plus 270 plus d'élément(s)
 Par Mickaël Guédon [ebrain] © 2003-2020 The Blender Clan - hébergé par TuxFamily - Site déclaré à la CNIL sous le numéro 1155445