Seite 1 von 1

[Projekt] Versa-Tile Modell-Editor

Verfasst: 16.07.2017, 19:25
von xq
Hallo liebe Gemeinde!

Ich habe vor einiger Zeit mal eine coole Idee für einen Modell-Editor im Web gesehen, der auf Basis von Sprites und einem Tileset 3D-Modelle baut. Da mir die Idee gut gefiel, die Umsetzung der beiden Editoren, die diese unterstützen aber nicht, habe ich hier mal meinen eigenen, kleinen Editor geschustert:

Bild

Einen Download findet man auf GitHub, ebenso einen Issue Tracker und das "Handbuch": Ich freue mich schon über Feedback und Verbesserungsvorschläge!

Grüße und viel Spaß beim Ausprobieren!
Felix

Ach, und wie gewünscht ein Workflow-Video:
[youtube]YOP8xNK97fQ[/youtube]

EDIT: Mittlerweile ist die 1.0 stabil und der Download-Link wurde aktualisiert

Re: [Projekt] Versa-Tile Modell-Editor

Verfasst: 17.07.2017, 16:38
von Jonathan
Sieht interessant aus. Ich fände ein Video cool, so dass man den Workflow schonmal sehen kann, ohne es vorher runterzuladen und installieren zu müssen.

Re: [Projekt] Versa-Tile Modell-Editor

Verfasst: 17.07.2017, 19:31
von xq
Dein Wunsch wurde erhöhrt! Und scheinbar ist auf GitHub das Projekt auch schon aufgefallen *grins*

Re: [Projekt] Versa-Tile Modell-Editor

Verfasst: 17.07.2017, 19:37
von Krishty
Erste Lehre aus dem Video: Das Fangen der Eckpunkte muss UNBEDINGT überarbeitet werden ;)

Sonst spitzenklasse. Ich werd’s diese Woche mal runterladen.

Schade übrigens, dass ich dir mit der Assimp-Export-Frage nicht weiterhelfen kann, aber dafür ist meine Erfahrung zu begrenzt …

Re: [Projekt] Versa-Tile Modell-Editor

Verfasst: 17.07.2017, 19:43
von xq
Erste Lehre aus dem Video: Das Fangen der Eckpunkte muss UNBEDINGT überarbeitet werden ;)
Das ist mir bewusst, ich weiß leider nicht, wo der fehler liegt :(

Der Code, mit dem ich die Projection berechne, ist folgender:

Code: Alles auswählen

void ModelEditorView::updateGizmos()
{
	Face * sel = this->getSelection();
	if(sel == nullptr) {
		for(int i = 0; i < 5; i++) {
			mGizmoPositions[i] = QPoint(-10, -10);
		}
		return;
	}

	glm::vec4 viewport(0, 0, this->width(), this->height());

	glm::vec3 acc;
	for(int i = 0; i < 5; i++)
	{
		glm::vec3 origin;
		if(i < 4) {
			origin = glm::vec3(sel->vertices[i].position);
			acc += 0.25f * origin;
		}
		else {
			origin = acc;
		}

		glm::vec3 pos = glm::project(
		            origin,
		            glm::mat4(),
		            this->matViewProj,
		            viewport);

		// round smartly
		this->mGizmoPositions[i] = QPoint(pos.x, this->height() - pos.y - 1);

		qDebug() << "#" << i << pos << this->mGizmoPositions[i];
	}
}

Re: [Projekt] Versa-Tile Modell-Editor

Verfasst: 17.07.2017, 19:56
von xq
Ich bin doof ^^

Das Problem war, dass ich
a) Die Unprojection nicht vollständig durchgeführt habe (pos.xy durch pos.z teilen hilft)
b) Unterschiedliche Grab-Distanzen verwendet habe (Maus-Icon hat 2 Pixel früher reagiert als Maus-Click)

Jetzt sollte das Problem wesentlich seltener auftreten...

Re: [Projekt] Versa-Tile Modell-Editor

Verfasst: 18.07.2017, 08:10
von Schrompf
Sehr cooles Projekt. Wenn's mal wieder ne Action geben sollte, zu der ich tatsächlich Zeit habe, bau ich irgendwas damit.

Re: [Projekt] Versa-Tile Modell-Editor

Verfasst: 18.07.2017, 17:03
von Top-OR
Moin MasterQ!

Ich habs nur kurz überflogen und das Video angeschaut ... *SeitMonatenKeineZeit*

Muss sagen: Ich finde den Ansatz SEHR interessant. Ich hoffe, dass das Projekt eine gewisse Reife erlangt.

Ich könnte mir vorstellen, auch Dinge damit zu bauen. Ich mag die Idee, Editoren zu haben, die gereade nicht alle möglichen Freiheitsgerade abbilden und tausende Möglichkeiten haben, die ich eh (im Herzen als Coder) nie verstehen und nutzen werde. Der Ansatz ist straight forward.

Mach weiter!

Re: [Projekt] Versa-Tile Modell-Editor

Verfasst: 20.07.2017, 09:04
von joeydee
Wie schon "damals" im Chat gesagt: muss ich mir unbedingt anschauen :) Evtl klappts am Wochenende. Schön dass du inzwischen eine Win-Version und einen Projektthread gemacht hast.

Re: [Projekt] Versa-Tile Modell-Editor

Verfasst: 20.07.2017, 12:55
von Jonathan
Ah, vielen Dank für das Video! Muss ich mir auch demnächst mal runterladen und anschauen :)

Re: [Projekt] Versa-Tile Modell-Editor

Verfasst: 20.07.2017, 18:55
von mrz
Ich schliesse mich den Vorrednern an: Sehr coole Sache!
Und erinnert mich an Super Paper Mario ^^
Das spielt man meistens 2D, muss aber öfters in die 3D Perspektive wechseln sonst kommt man nicht weiter.

Re: [Projekt] Versa-Tile Modell-Editor

Verfasst: 26.07.2017, 21:16
von joeydee
dahouse.jpg
Ja, funktioniert :)
Wunschliste:
- Gitter-Flip nur auf Hotkey/Button (toggle x,y,z), nicht automatisch. Man will auch mal das gerade Gebaute nur aus anderer Richtung betrachten/anpeilen, nicht gleich die Ebene wechseln.
- Button/Hotkey, um die aktuelle Auswahl als neuen Dolly-Mittelpunkt festzulegen. Dann kann man leichter dort weiterbauen, wo man gerade ist.
- Evtl. leichtes Bodengitter immer einblenden, zur besseren Orientierung.

Re: [Projekt] Versa-Tile Modell-Editor

Verfasst: 26.07.2017, 21:41
von xq
Geil! Die Feature-Wünsche werden gleich mal registriert und durchdachte, fehlt nur wieder Motivation, weiter zu machen :P

Re: [Projekt] Versa-Tile Modell-Editor

Verfasst: 29.07.2017, 14:45
von xq
So, ich hab mittlerweile alle Issues für die 1.0 auf GitHub resolved. Jetzt muss ich mal noch nen neuen Build basteln, der alle gelösten Probleme enthält... :)

Re: [Projekt] Versa-Tile Modell-Editor

Verfasst: 31.07.2017, 11:20
von xq
Ich bin grade auf der Suche nach einem neuen Tileset, das ich als Standard-Tileset einfügen könnte.

Eines der Fundstücke würde sich recht gut für Dungeons eignen:
Bild

Re: [Projekt] Versa-Tile Modell-Editor

Verfasst: 01.08.2017, 09:00
von joeydee
Die roguelike Kenneyassets aus der Action XII waren eigentlich recht umfangreich. Grafisch natürlich keine hohen Detailansprüche, aber für "Dreamland" ließ sich damit einiges individuell bauen.
Roguelike hat ja jeweils horizontale und vertikale Flächen sowie Schrägen in Draufsicht, speziell nach solchen Sets würde ich suchen, und je einfacher, desto eher eignen sie sich auch für flache 3D-Wände.
Jedenfalls kannst du mit den Kenneyassets auch gleich überlegen, wie du große Sets und mehrere Quellen mit jeweils vielen kleinen Tiles übersichtlich verwaltest.

Re: [Projekt] Versa-Tile Modell-Editor

Verfasst: 01.08.2017, 09:30
von xq
Die Idee mit den Roguelike-Tilesets ist gar nicht so kacke, und du hast damit gleich für einen weiteren Issue gesorgt: Verbesserter Tileset-Support mit Margin und Padding:

Bild

Re: [Projekt] Versa-Tile Modell-Editor

Verfasst: 01.08.2017, 14:09
von xq
Wow, danke für den Tip mit den Tilesets! Die hatte ich komplett aus den Augen verloren:

Bild

Re: [Projekt] Versa-Tile Modell-Editor

Verfasst: 02.08.2017, 11:46
von xq
So, nach einiger Zeit ist es so weit: VersaTile 1.0 ist fertig und ready-to-use!

https://github.com/MasterQ32/VersaTile/ ... tag/v1.0.1