PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Charakter Auswahl/Anpassung InGame???



LM70
30.06.2012, 13:39
Erstmal ein nettes Hallo an Alle,

leider bin ich bei einer Suche nach Hilfe für obiges Thema weder im deutschen noch im englischen Sprachraum fündig geworden.:sad:

Da, bevor ich mit einem Projekt anfange, gerne wissen möchte, ob es überhaupt möglich ist in CryEngine 3 so etwas wie eine Anpassung oder eine Auswahl zwischen unterschiedlichen Charakteren/Spielfiguren "im Spiel" zu implementieren. Z.B. unterschiedliche Gesichter/Augen/Dick/Dünn/Mann/Frau usw.)

Deshalb kurz ein paar Fragen:

1. Kennt Jemand einen Link zu dem Thema?

2. Evtl. benutze ich auch die falschen Suchbegriffe, deshalb wäre ich für ein paar spezielle Suchbegriffe sehr dankbar.

3. Falls sich Jemand damit auskennt, wäre ich für ein paar kurze Hinweise in dieser Richtung sehr dankbar.

4. Ich bin für jeden Hinweis dankbar :-)


Danke schonmal im Voraus,

Lisa

Masterside
30.06.2012, 16:55
Moin Moin und willkommen im CHQ.

Dein Vorhaben ist grund setztlich möglich, wenn du natürlich die 3d Modele sollcher
Chars hast. Wenn du diese besitzt und in C2 oder CE3 SDK drinne hast, kannst du das
PlayerModel via Entity/Others/PlayerModelChanger oder direkt im FlowGraph wechseln.

General Kaboom
30.06.2012, 18:42
Das Problem dabei sehe ich in der Menge an verschiedenen vorgefertigten kompletten Modellen die dann natürlich scho enorm Speicher verbrauchen und die Ladezeiten für ein komplettes Playermodell sind auch nicht gerade geeignet für so ein System...es sollte doch irgendwie eine Möglichkeit geben, nur bestimmte Teile des Modells anpassen zu können.

LM70
01.07.2012, 09:55
Danke für die schnellen Antworten

@Masterside

Ich dachte daran beim Start des Spieles, bevor man eine Kampagne oder Level startet, eine Art Profil-Editor zu öffnen, in dem man seinen Charakter zurechtbasteln kann a la Saints Row the Third oder bei MMORPGs wo man z.B. das Gesicht anpassen kann (Bart,Augen,Nase...) oder die Körperteile dicker, dünner ... machen kann.

Ist das miit dem PlayerModelChanger oder Flowgraph auch möglich?

Ich hab mal danach gesucht und es sieht so aus als ob das alles auf Events aufbaut, wenn man im Spiel (Level) ist.


@General Kaboom

Die Modelle werden ja erst geladen wenn man sie benötigt, dürften also kaum zusätzliche Leistung benötigen. Bei vielen Games kann man ja seinen Char am Anfang des Spieles so erstellen wie man es gerne hätte und wenn der Char zusammengeklickt wurde, dann speichert das System eine Art Zeichenfolge, die besagt welcher Charakter mit welchen Merkmalen verwendet werden soll und dann wird dieser das ganze Spiel über verwendet.
Bei einigen Games gibt es sogar im Spiel die Möglichkeit den Charakter nachträglich zu ändern, z.B. bei Saints Row the Third, da kann man in eine Art Klinik für Schönheitsoperationen gehen und sein Aussehen verändern.


Gruß

Hamers
01.07.2012, 10:16
Nichts für ungut, aber das klingt mir ein wenig zu aufwendig. In Crysis 2 ist es definitiv nicht möglich (Third Person geht dort eh kaum), im Free SDK könnte man es sich selbst programmieren. Allerdigs gibt es dort kaum Charaktere zur Auswahl, du müstest also alles selber machen, was wohl viel zu aufwendig ist nur für solch ein Feature.

Biggreuda
01.07.2012, 10:28
Kurz und knapp:
Ich habe einige Spielkonzepte entwickelt, unter anderem auch mit Möglichkeiten und Einschränkungen je nach Benutzung individueller Engines.
Bei der Kombination Charakter-Editor / Cryengine habe ich da immer stehen "Umsetzung nicht möglich / zu aufwändig".

In der Engine ist so etwas einfach per Standard nicht möglich. Man müsste praktisch eine eigene Schnittstelle entwickeln, welche mehr oder weniger schon ein eigenes Programm darstellt. Innerhalb dieser müsste man dann die Konfiguration seines Chars vornehmen können und diese müsste das Modell dannso abspeichern, dass es vom Spiel anschließend geladen werden kann.
Ich würde da grob einen Aufwand von mindestens 3 Wochen für einen erfahrenen Programmierer einplanen (reine Umsetzung ohne Planung/Konzept).

LM70
01.07.2012, 16:38
Für eine solche herausragende Game-Engine finde ich es schade, das solche essentiellen Funktionen nicht in irgend einer abgespeckten Grundversion mit angeboten werden.
Fast jedes Spiel hat ja am Anfang eine Auswahl von verschiedenen Charaktern.
Wenn ich ein Multiplayer entwickeln möchte, dann sollten sich die Gegner doch wohl vom Aussehen unterscheiden!?!?
Die Cryengine 3 wurde ja nicht aus Jux und Dollerei öffentlich freigegeben, die verdienen ja durch die Lizenzierung der entwickelten Games mit, da sollte man es dem Anwender doch etwas leichter machen, hmmm?
Evtl. lässt sich das ja mit dem FlowGraph oder direkt mit dem Scripting der Engine lösen, werde das mal näher in Augenschein nehmen.
Ich denke, dass ich mit einem Grundsortiment von unterschiedlichen Charakteren oder sogar mit allen Variationen, die mir so einfallen, die Modelle schon fertig ins Spiel integriere und dann beim Start des Spiels eine Auswahl treffen muß.
Mal sehen ob man eine solche Option einbinden kann.

Falls doch noch Jemand evtl. Informationen von anderen Engines oder speziell entwickelten Charakter-Tools von anderen Spielen hat, oder spezielle Suchbegriffe zu dem Thema (Charakter-Auswahl, Profil erstellen) kennt, dann immer her damit :-D

Flow groover
01.07.2012, 21:23
Falls doch noch Jemand evtl. Informationen von anderen Engines oder speziell entwickelten Charakter-Tools von anderen Spielen hat, oder spezielle Suchbegriffe zu dem Thema (Charakter-Auswahl, Profil erstellen) kennt, dann immer her damit :-D

Mass Effect 2&3 nutzen die Unreal Engine 3, eventuel würde ich mal da nachschauen.

Stalker_Raince
01.07.2012, 22:41
Für eine solche herausragende Game-Engine finde ich es schade, das solche essentiellen Funktionen nicht in irgend einer abgespeckten Grundversion mit angeboten werden.
Fast jedes Spiel hat ja am Anfang eine Auswahl von verschiedenen Charaktern.
Wenn ich ein Multiplayer entwickeln möchte, dann sollten sich die Gegner doch wohl vom Aussehen unterscheiden!?!?
Die Cryengine 3 wurde ja nicht aus Jux und Dollerei öffentlich freigegeben, die verdienen ja durch die Lizenzierung der entwickelten Games mit, da sollte man es dem Anwender doch etwas leichter machen, hmmm?
Ganz kurz dazu:

Glaubst du allen ernstes, dass Crytek KOSTENLOS dir alle Features für jedes Spiel dass es irgendwo gibt erstellen und dann zur Verfügung stellen wird? Falls du es noch nicht bemerkt hast: Das Free SDK ist die rohe Engine. Das was du da drin als "Spiel" siehst ist ein Beispielcode, der nicht umsonst so heißt.

Gibt es jetzt eine Funktion, oder ein Feature, dass du gerne haben willst, musst du es wohl oder übel selber von Grund auf erstellen. Da wird dir Crytek nicht direkt unter die Arme greifen. Wozu auch?

Das heißt, du musst das ganze a) selber kodieren, und b) selber modellieren. Denk dran, das Free SDK ist nicht für Hobbymodder wie du und ich gedacht, sondern für Spielentwickler.

PS: Nicht jedes Spiel hat eine Auswahl von Charakteren am Anfang, falls es dir nicht aufgefallen ist, von Zeit zu Zeit nehmen solche Spiel an Anzahl ab.

EDIT: Mit Flowgraph wirst du das kaum sauber hinbekommen, dafür solltest du dich ins C++ Coding reinfinden, um da was hinzubekommen. ZB. bei Unterschiedlichen Körpergrößen nimmste ein kleinen, einen großen, und lässt die per Code Befehl mithilfe eines Sliders ineinander Überblenden. Das ist die Skyrim Methode.

General Kaboom
02.07.2012, 11:11
Danke für die schnellen Antworten

@Masterside

Ich dachte daran beim Start des Spieles, bevor man eine Kampagne oder Level startet, eine Art Profil-Editor zu öffnen, in dem man seinen Charakter zurechtbasteln kann a la Saints Row the Third oder bei MMORPGs wo man z.B. das Gesicht anpassen kann (Bart,Augen,Nase...) oder die Körperteile dicker, dünner ... machen kann.

Ist das miit dem PlayerModelChanger oder Flowgraph auch möglich?

Ich hab mal danach gesucht und es sieht so aus als ob das alles auf Events aufbaut, wenn man im Spiel (Level) ist.


@General Kaboom

Die Modelle werden ja erst geladen wenn man sie benötigt, dürften also kaum zusätzliche Leistung benötigen. Bei vielen Games kann man ja seinen Char am Anfang des Spieles so erstellen wie man es gerne hätte und wenn der Char zusammengeklickt wurde, dann speichert das System eine Art Zeichenfolge, die besagt welcher Charakter mit welchen Merkmalen verwendet werden soll und dann wird dieser das ganze Spiel über verwendet.
Bei einigen Games gibt es sogar im Spiel die Möglichkeit den Charakter nachträglich zu ändern, z.B. bei Saints Row the Third, da kann man in eine Art Klinik für Schönheitsoperationen gehen und sein Aussehen verändern.


Gruß

Doch noch was dazu...bei der Charaktererstellung werden die Modelle ja dann auch geladen (also jeder Kopf wird geladen wenn du ihn auswählst und jeder Torso und jedes sonstige Körperteil auch. Ausser man macht es mit Bildern aber das wirkt irgendwie schäbig.

LM70
02.07.2012, 12:03
Ganz kurz dazu:

Glaubst du allen ernstes, dass Crytek KOSTENLOS dir alle Features für jedes Spiel dass es irgendwo gibt erstellen und dann zur Verfügung stellen wird? Falls du es noch nicht bemerkt hast: Das Free SDK ist die rohe Engine. Das was du da drin als "Spiel" siehst ist ein Beispielcode, der nicht umsonst so heißt.

Entschuldigung, aber du klingst ja wie ein Programmierer von der Cryengine, der etwas gestreßt ist und seine Engine verteidigen muß (nicht böse gemeint). ;-)

Dieses Feature ist aber nach meiner Sicht eines der Grundlegendsten und wie ich schon geschrieben habe will ich auch keine fertige Funktion sondern nur eine Art Grobgerüst mit etwas Hilfe wie man eine solche erstellen könnte, wie es sie bei den anderen Themen im Crydev-Dashboard gibt.


PS: Nicht jedes Spiel hat eine Auswahl von Charakteren am Anfang, falls es dir nicht aufgefallen ist, von Zeit zu Zeit nehmen solche Spiel an Anzahl ab.Das können ja nur Singleplayer Spiele sein, oder wie unterscheiden sich dann die Gegner voneinander wenn alle den selben Charakter verwenden?

Aber hast schon recht, es ist halt wirklich sehr auf professionelle Entwickler ausgelegt.
Ich hätte mir aber gewünscht, das es mehr Tutorials speziell für solche Themen von interessierten Anwendern gibt, habe aber leider nichts brauchbares gefunden und deshalb ja auch meine Frage in diesem Board nach ein paar Hinweisen und Denkanstössen in diese Richtung, aber trotzdem danke.


Doch noch was dazu...bei der Charaktererstellung werden die Modelle ja dann auch geladen (also jeder Kopf wird geladen wenn du ihn auswählst und jeder Torso und jedes sonstige Körperteil auch. Ausser man macht es mit Bildern aber das wirkt irgendwie schäbig. Da es ja vor dem Einstieg ins Level, geladen wird, ist es nicht so Rechenintensiv, man kann sich ja auch 3d Modelle in einem 3d-Viewer anschauen und der benötigt auch nur sehr geringe ressourcen.
Es ist halt schon ein etwas größerer Aufwand, da gebe ich Allen hier recht, aber das ist ja mein Problem und Hobby :grin:
Ich möchte halt zuerst die Funktionen und Möglichkeiten erkunden die machbar sind und natürlich auch ein paar Beispiele ausprobieren und dann tiefer in die Materie einsteigen. Nebenher entwickle ich dann die Charakter und das Envi und importiere sie dann in die Cryengine.

Masterside
02.07.2012, 13:26
Dieses Feature ist aber nach meiner Sicht eines der Grundlegendsten
Da bist du wahrscheinlich der einzige, der glaubt das dies ein Basic Feature wäre.



Das können ja nur Singleplayer Spiele sein, oder wie unterscheiden sich dann die Gegner voneinander wenn alle den selben Charakter verwenden?

Im SP legt der Gamedesigner fest, wie die Gegner aussehen. Und in vielen MP's unterscheiden sich die Models ja nicht. Bsp: C2 - Cell oder Marine Model



Ich möchte halt zuerst die Funktionen und Möglichkeiten erkunden die machbar sind und natürlich auch ein paar Beispiele ausprobieren und dann tiefer in die Materie einsteigen. Nebenher entwickle ich dann die Charakter und das Envi und importiere sie dann in die Cryengine.
Es gibt nur die Möglichkeit das direkt in den C++ Code zu implementieren. Und btw neue Charaktere entwickelt man nicht mal so nebenbei. ;)

Stalker_Raince
02.07.2012, 17:51
Entschuldigung, aber du klingst ja wie ein Programmierer von der Cryengine, der etwas gestreßt ist und seine Engine verteidigen muß (nicht böse gemeint). ;-)
Ne, ich war nur etwas frustriert, weil du sowas einfach auf die leichte Schulter nimmst. Sowas ist arbeit, und wenn ich das ganze dann kostenlos, ohne etwas zurückzubekommen, auf den Markt werfe, fänd ich das nicht ok. Ich finde die Leute könnten immerhin froh sein, dass wir überhaupt Zugang zur Engine bekommen.


Dieses Feature ist aber nach meiner Sicht eines der Grundlegendsten und wie ich schon geschrieben habe will ich auch keine fertige Funktion sondern nur eine Art Grobgerüst mit etwas Hilfe wie man eine solche erstellen könnte, wie es sie bei den anderen Themen im Crydev-Dashboard gibt.

Das können ja nur Singleplayer Spiele sein, oder wie unterscheiden sich dann die Gegner voneinander wenn alle den selben Charakter verwenden?

Wie Masterside schon sagte, das ist keines Wegs Grundlegend! Charaktermodelle werden mithilfe des Character Editors des Sandbox Editors zusammengebaut, das ist der gängigste Weg bei der CryEngine bisher gewesen. Man kann jetzt aber letzendlich nicht mal eben so eine Charaktererstellung draus zaubern, obwohl ich der Meinung bin, dass man das irgendwie verlinken könnte.

Aber letzendlich bleibt dir das Charaktermodellieren, das C++ Coding und das Texturieren. Und das sind schon mehrere Wochen bis Monate arbeit.

Wie gesagt: Sowas ist nicht für Hobbymodder ausgelegt!

Hamers
03.07.2012, 12:23
Das Feature an sich ist keine so große Sache, WENN du C++ kannst. Flash schadet auch nicht fürs Design. Das würde ich vermutlich sogar hinkriegen, nur hat man im Free SDK keine besondere Auswahl.
Und wenn du keine Comic Grafik hast, sondern richtige Charaktere, dann dauert das Modellieren von neuen Chars viel zu lange, als das es sich lohnt. 1-3 verschiedene für den MP ja, aber ganz verschiedene würde ich nicht versuchen.

LM70
05.07.2012, 12:15
Danke nochmal an Alle,

@Hamers

Was die Charakter angeht, da hast du ziemlich ins Schwarze getroffen, wollte ein Game im Anime Stil erstellen, reale Charakter erstelle ich dann sowieso zusätzlich nebenher, da es ein Hobby von mir ist.


In C++ bin ich noch Anfänger, aber ich setze mich da nicht unter Druck und falsche Zeitvorstellungen was das Lernen und Entwickeln angeht habe ich sicher nicht.
Die Grundlegende Frage für mich war ja welche Game-Engine ich mir antue und welche Möglichkeiten sie bietet, bevor ich richtig loslege.
Ich denke ich werde da bei der CryEngine bleiben, da sie ja sicher weiterentwickelt wird und ich keine Lust habe von einer Engine auf eine Andere zu wechseln, weil da ja dann wieder vieles umgelernt werden muß geschweige denn erstellte scripte usw. migriert werden müssen.

Ich denke das Thema kann geschlossen werden.

Danke

Biggreuda
05.07.2012, 17:37
Wow, hätte nicht gedacht, dass du dich da nicht entmutigen lässt!
Finde ich schon mal eine sehr gute Einstellung und ich wünsche dir viel Erfolg!
Threads werden hier gar nicht so oft geschlossen und zu dem Thema können ja auch noch weitere Fragen auftreten, von daher wäre es imho eigentlich besser, wenn er auf bleiben würde.
Dann kannst du auch deinen Fortschritt und weitere Fragen hier posten... ;)

Wie gesagt; Mir wäre die (alleinige) Umsetzung zu aufwändig, aber interessant und nützlich fände ich das Feature in der CE durchaus.

General Kaboom
05.07.2012, 22:10
Naja, damit da nicht mit allzu viel performanceeinbussungen gerechnet werden muss, sollte das WENN in der CryEngine auf einer sepparaten Map gemacht werden, die einzig für diesem Zweck dient...den erstellten Charakter dann aber an das restliche Spiel weiterzugeben könnte etwas komplizierter sein. Vorallem, weil es ja scho bei 10 Teilen pro Kategorie bestimmt 100 Möglichkeiten gibt und halte es für wenig sinnvoll, jedes einzelne dieser 100 schon vorzubereiten...naja wir werden sehen, klingt auf jedenfall interessant und ich würde mal sagen auf jeden Fall dranbleiben, wobei es zu DIESEM Thema wahrscheinlich keine Rolle spielt, welche Engine verwendet wird (also UDK ode CE, andere fallen mir gerade keine ein). Ich werde dich auf jeden Fall im Auge behalten -.^