Demande de conseils avant démarrage projet (meilleur façon de faire)
Demande de conseils avant démarrage projet (meilleur façon de faire)
Bonjour,
Je dois réaliser une application...et pour la première fois je vais le faire dans Unity!
Je vous demande donc de bien vouloir être indulgent avec moi, c'est très humblement que je viens vous demander quelle est la meilleure façon de faire pour le projet que je vais vous présenter très brièvement!
Si je veux réaliser l'application dans Unity, c'est uniquement pour bénéficier du moteur de rendu 3D.
Ce n'est donc pas un jeux du tout...mais une application traditionnelle qui doit posséder comme interface un environnement 3D.
Voici ma question:
L'application doit pouvoir offrir la possibilité de changer de "thème" (comme on le dirait pour une application traditionnelle)...à part qu'ici, le thème sera un environnement 3D différent!
Donc, si l'interface de l'application représente un bureau, on doit être capable de changer le thème (le bureau) à tout moment...tout en gardant (et c'est très important) un lien vers les éléments d'une scène à l'autre.
Quand je change de scène, je dois pouvoir identifier l'élément 'écran PC' d'une scène à l'autre pour qu'il puisse recevoir une image d'écran.
Quand je change de scène, je dois pouvoir identifier l'élément 'tableau' (pour y afficher du texte)
etc...
J'espère que ma présentation du projet est clair!? Il est donc question d'avoir un code principal et de pouvoir appeler telle ou telle scène (faite de modèles 3D différents) et d'y afficher en textures des éléments images, movie, texte (finalement semblable d'une scène à l'autre) sur des éléments 'types' d'une scène à l'autre: l'écran, le mur, un tableau,...
Quelles seraient pour vous la meilleure façon de faire? Quand on veut "alimenter" (en image, texte, movie) les éléments de la scène, est-ce le code principale qui s'adresse directement à la scène..ou la scène qui va prendre ses informations dans le code principal?
Merci pour l'aide que vous voudrez bien m'apporter, pour vos conseils...et pour votre indulgence!
Je dois réaliser une application...et pour la première fois je vais le faire dans Unity!
Je vous demande donc de bien vouloir être indulgent avec moi, c'est très humblement que je viens vous demander quelle est la meilleure façon de faire pour le projet que je vais vous présenter très brièvement!
Si je veux réaliser l'application dans Unity, c'est uniquement pour bénéficier du moteur de rendu 3D.
Ce n'est donc pas un jeux du tout...mais une application traditionnelle qui doit posséder comme interface un environnement 3D.
Voici ma question:
L'application doit pouvoir offrir la possibilité de changer de "thème" (comme on le dirait pour une application traditionnelle)...à part qu'ici, le thème sera un environnement 3D différent!
Donc, si l'interface de l'application représente un bureau, on doit être capable de changer le thème (le bureau) à tout moment...tout en gardant (et c'est très important) un lien vers les éléments d'une scène à l'autre.
Quand je change de scène, je dois pouvoir identifier l'élément 'écran PC' d'une scène à l'autre pour qu'il puisse recevoir une image d'écran.
Quand je change de scène, je dois pouvoir identifier l'élément 'tableau' (pour y afficher du texte)
etc...
J'espère que ma présentation du projet est clair!? Il est donc question d'avoir un code principal et de pouvoir appeler telle ou telle scène (faite de modèles 3D différents) et d'y afficher en textures des éléments images, movie, texte (finalement semblable d'une scène à l'autre) sur des éléments 'types' d'une scène à l'autre: l'écran, le mur, un tableau,...
Quelles seraient pour vous la meilleure façon de faire? Quand on veut "alimenter" (en image, texte, movie) les éléments de la scène, est-ce le code principale qui s'adresse directement à la scène..ou la scène qui va prendre ses informations dans le code principal?
Merci pour l'aide que vous voudrez bien m'apporter, pour vos conseils...et pour votre indulgence!
Re: Demande de conseils avant démarrage projet (meilleur façon de faire)
Bonjours, je ne suis pas le mieux indiquer pour répondre aussi, je peut faire fausse route.
Mais, normalement tu peut changer l'environnement 3D en changent de scène et utiliser une fonction (DontDestroyOnLoad de tête) qui évite la destruction d'un ou plusieur élément de la scène lors du changement. Je vois mal comment tu veux organiser l'interface de l'appli.
Mais, d'après ce que j'ai compris tu veux changer d'environnement 3D sans perdre le précédent. Aussi pour cela te faudra t'il utiliser les UI (Les boutons et text d'unity) et leur donner un script avec une fonction qui dit "charger la scène burreau" puis lier la fonction au bouton. Et, dans la scène burreau faire de meme pour revenir a la scène précédente.
A noté que en fesent ainsi :
- 1) le bouton de changement de scène ne sera pas fixer sur un éllément du décor
- 2) Il risque d'y avoir un temps de chargement d'une scène a l'autre dont la durée varira suivent le contenu de la scène, la puissance de la machine...
Résolution : Pour le 1, il est possible de mettre une zone ( expemple une porte) ou le chargement de scène s'active quand tu clique dessus. (function OnMouseUp de tete)
Pour le 2, il est possible aussi de mettre tout les environnements 3D côte a côte dans une meme scène et faire changer les possitions du "joueur" a la place de le changer de scène. (le script je me souvient plus) Après, je ne sais pas si c'est réelement une bonne idée ou un belle bétise ^^'
Quand a "Quelles seraient pour vous la meilleure façon de faire? Quand on veut "alimenter" (en image, texte, movie) les éléments de la scène, est-ce le code principale qui s'adresse directement à la scène..ou la scène qui va prendre ses informations dans le code principal?" je te répondrais : "il est possible de mettre une zone ( expemple une porte) ou le chargement de scène s'active quand tu clique dessus. (function OnMouseUp de tete)" tu as aussi l'entrer en zone de collider IsTrigger avec OnTrigerEnter... Après je ne vois pas exactement ce que tu veut dire part "le code principale qui s'adresse directement à la scène..ou la scène qui va prendre ses informations dans le code principal?" puisque dans tout les cas on peut dire que le code s'adresse a la scène en disent "si le "joueur" s'approche..." et la scène prend les ordre du code en fesent "tien que me dit le code?" bon c'est pas exactement ca dans le détail mais c'est l'idée de ce rend la question un peut embigue pour moi...
Voila, j'espère que j'ai pas rédiger mon pavé a côté de la plaque XD
Mais, normalement tu peut changer l'environnement 3D en changent de scène et utiliser une fonction (DontDestroyOnLoad de tête) qui évite la destruction d'un ou plusieur élément de la scène lors du changement. Je vois mal comment tu veux organiser l'interface de l'appli.
Mais, d'après ce que j'ai compris tu veux changer d'environnement 3D sans perdre le précédent. Aussi pour cela te faudra t'il utiliser les UI (Les boutons et text d'unity) et leur donner un script avec une fonction qui dit "charger la scène burreau" puis lier la fonction au bouton. Et, dans la scène burreau faire de meme pour revenir a la scène précédente.
A noté que en fesent ainsi :
- 1) le bouton de changement de scène ne sera pas fixer sur un éllément du décor
- 2) Il risque d'y avoir un temps de chargement d'une scène a l'autre dont la durée varira suivent le contenu de la scène, la puissance de la machine...
Résolution : Pour le 1, il est possible de mettre une zone ( expemple une porte) ou le chargement de scène s'active quand tu clique dessus. (function OnMouseUp de tete)
Pour le 2, il est possible aussi de mettre tout les environnements 3D côte a côte dans une meme scène et faire changer les possitions du "joueur" a la place de le changer de scène. (le script je me souvient plus) Après, je ne sais pas si c'est réelement une bonne idée ou un belle bétise ^^'
Quand a "Quelles seraient pour vous la meilleure façon de faire? Quand on veut "alimenter" (en image, texte, movie) les éléments de la scène, est-ce le code principale qui s'adresse directement à la scène..ou la scène qui va prendre ses informations dans le code principal?" je te répondrais : "il est possible de mettre une zone ( expemple une porte) ou le chargement de scène s'active quand tu clique dessus. (function OnMouseUp de tete)" tu as aussi l'entrer en zone de collider IsTrigger avec OnTrigerEnter... Après je ne vois pas exactement ce que tu veut dire part "le code principale qui s'adresse directement à la scène..ou la scène qui va prendre ses informations dans le code principal?" puisque dans tout les cas on peut dire que le code s'adresse a la scène en disent "si le "joueur" s'approche..." et la scène prend les ordre du code en fesent "tien que me dit le code?" bon c'est pas exactement ca dans le détail mais c'est l'idée de ce rend la question un peut embigue pour moi...
Voila, j'espère que j'ai pas rédiger mon pavé a côté de la plaque XD
Re: Demande de conseils avant démarrage projet (meilleur façon de faire)
Hello à toi Jayme65,
J'avoue que j'ai pas particulièrement compris ce que tu voulais vraiment faire dans ton projet. Tu veux genre être dans un bureau et changer les éléments de ce bureau ou alors tu as plusieurs "bureaux" en stock et tu veux switcher de style (genre moderne, art déco, papi/mamie style?).
Je voudrais bien t'éclairer un peu mais j'avoue que ton explication est floue pour moi, c'est quoi le but ultime?
J'avoue que j'ai pas particulièrement compris ce que tu voulais vraiment faire dans ton projet. Tu veux genre être dans un bureau et changer les éléments de ce bureau ou alors tu as plusieurs "bureaux" en stock et tu veux switcher de style (genre moderne, art déco, papi/mamie style?).
Je voudrais bien t'éclairer un peu mais j'avoue que ton explication est floue pour moi, c'est quoi le but ultime?
"N'est stupide que la stupidité Monsieur..." - Forest Gump
... sauf si tu lis pas ça
Si tu as tout ce qu'il te faut, merci de penser à basculer ton sujet en [RESOLU] en éditant ton tout premier post
... sauf si tu lis pas ça
Si tu as tout ce qu'il te faut, merci de penser à basculer ton sujet en [RESOLU] en éditant ton tout premier post
Re: Demande de conseils avant démarrage projet (meilleur façon de faire)
Merci pour ta réponse Iwa! Oui, c'est exactement ça!Iwa a écrit :tu as plusieurs "bureaux" en stock et tu veux switcher de style (genre moderne, art déco, papi/mamie style?)
Comme j'en ai parlé, il s'agit d'un programme "traditionnel" à réaliser dans Unity pour profiter d'un rendu 3D pour l'interface.
Tout comme tu le dis on pourra switcher entre différents styles de bureau (ce que j'appelais "des thèmes"). Ce faisant, on devra ré-afficher des infos à des endroits prédéfinis du bureau: l'écran du pc, l'horloge, un tableau,...
Est-ce plus clair ainsi?
Re: Demande de conseils avant démarrage projet (meilleur façon de faire)
Jayme65 a écrit :Ce faisant, on devra ré-afficher des infos à des endroits prédéfinis du bureau: l'écran du pc, l'horloge, un tableau,...
Hello,
Ca c'est toujours pas hyper clair pour moi. En gros tu veux que le style du bureau change (et les couleurs de la pièce sûrement pour la cohérence?) et que par contre le clavier, la souris, l'horloge, le tableau, l'écran soit toujours là. En gros la 3D du bureau change, les couleurs de la pièce change mais les objets classiques bureau, porte documents et autre "décos" restent en place à leur position?
Parce que dans l'exemple que tu montres on voit un bureau puis on voit un salon, alors je suis pas sûre de suivre complètement l'idée. Chui vraiment désolée hein ^^"
"N'est stupide que la stupidité Monsieur..." - Forest Gump
... sauf si tu lis pas ça
Si tu as tout ce qu'il te faut, merci de penser à basculer ton sujet en [RESOLU] en éditant ton tout premier post
... sauf si tu lis pas ça
Si tu as tout ce qu'il te faut, merci de penser à basculer ton sujet en [RESOLU] en éditant ton tout premier post
- boubouk50
- ModoGenereux
- Messages : 6243
- Inscription : 28 Avr 2014 11:57
- Localisation : Saint-Didier-en-Bresse (71)
Re: Demande de conseils avant démarrage projet (meilleur façon de faire)
Tout pareil qu'Iwa.
"Ce n'est pas en améliorant la bougie, que l'on a inventé l'ampoule, c'est en marchant longtemps."
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation
Re: Demande de conseils avant démarrage projet (meilleur façon de faire)
Bonjour,
Ça ressemble énormément à ce qu'il est possible de faire dans GTA quand on achète un bureau. Il y a 4 ou 5 thèmes de déco pour un même bureau. Je pense que leur technique est de changer les textures. Les Objet 3D restent les mêmes....
Ça ressemble énormément à ce qu'il est possible de faire dans GTA quand on achète un bureau. Il y a 4 ou 5 thèmes de déco pour un même bureau. Je pense que leur technique est de changer les textures. Les Objet 3D restent les mêmes....
Re: Demande de conseils avant démarrage projet (meilleur façon de faire)
Bin non, c'est un VRAI programme en 3D sans un GamePlay de jeu "traditionnel".Jayme65 a écrit :Comme j'en ai parlé, il s'agit d'un programme "traditionnel" ....
Thème = Scène et les éléments récurrents possèdent le même Tag/Label/Name d'une scène à l'autre. Leurs scripts devraient permettre de faire le travail demandé.
a) Réaliser les Scènes
b) Identifier les récurrents
c) Y "coller" le bon script
...
Re: Demande de conseils avant démarrage projet (meilleur façon de faire)
Non, tous les éléments 3D changent d'une scène à l'autre!Iwa a écrit :En gros la 3D du bureau change, les couleurs de la pièce change mais les objets classiques bureau, porte documents et autre "décos" restent en place à leur position?
Par contre certaines textures doivent être réattribuée:
- si dans la scène précédente l'écran du PC affichait une image de Donald, l'écran PC de la 'nouvelle' scène doit afficher la même image
- si un tableau de travail affichait le texte de la déclaration des droits de l'homme, le tableau de la nouvelle scène doit afficher le même texte
- l'horloge sera mise à jour
- etc...
C'est pour cela que je parle de thème depuis le début: l'information reste la même c'est juste la représentation graphique qui change!
Merci!
- boubouk50
- ModoGenereux
- Messages : 6243
- Inscription : 28 Avr 2014 11:57
- Localisation : Saint-Didier-en-Bresse (71)
Re: Demande de conseils avant démarrage projet (meilleur façon de faire)
Il te faut donc 2 choses:
- Stocker l'information à conserver: PlayerPrefs: tu stockes chaque valeur avec une clé pour chacune.
- Appliquer au Start () ces informations: PlayerPrefs: tu récupères chaque valeur avec chaque clé.
Tu peux également utiliser des variables internes pour stocker ses informations dans un gameObject qui ne se détruira pas lors du changement de scène grâce à DontDestroyOnLoad ().
- Stocker l'information à conserver: PlayerPrefs: tu stockes chaque valeur avec une clé pour chacune.
- Appliquer au Start () ces informations: PlayerPrefs: tu récupères chaque valeur avec chaque clé.
Tu peux également utiliser des variables internes pour stocker ses informations dans un gameObject qui ne se détruira pas lors du changement de scène grâce à DontDestroyOnLoad ().
"Ce n'est pas en améliorant la bougie, que l'on a inventé l'ampoule, c'est en marchant longtemps."
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation