Erweiterte Sprite-Engine zur schnelleren Programmierung von

Hier kann alles mögliche diskutiert werden. Themen zu Purebasic sind hier erwünscht.
Flames und Spam kommen ungefragt in den Mülleimer.
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

> Können auch [...] Steine aus echtem Stein [sein].

wie jetzt... du willst falsche grüne Steine? :?
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
rolaf
Beiträge: 3843
Registriert: 10.03.2005 14:01

Beitrag von rolaf »

Er meint sicher grüne Klosteine. :mrgreen:
:::: WIN 10 :: PB 5.73 :: (x64) ::::
Benutzeravatar
TomS
Beiträge: 1508
Registriert: 23.12.2005 12:41
Wohnort: München

Beitrag von TomS »

Er meint die grauen, brauen, schwarzen, die halt nicht so schön glänzen. die, über die man draußen halt dauernd stolpert. Keine (Halb-)Edelsteine.
THEEX
Beiträge: 804
Registriert: 07.09.2004 03:13

Beitrag von THEEX »

Vielleicht mag ich mich ja täuschen, aber ich bin der Meinung, daß Xaby zwar viele Ideen hat, wohl davon auch einige wirklich brauchbar bzw. machbar wären, er aber selbst keine Lust hat, dafür etwas zu tun oder genug dafür zu tun.
Wenn man wirklich an etwas inovatives so sehr glaubt, muß man sich auch selbst damit befassen und permanet daran arbeiten und nicht immer nur Vorschläge machen und hoffen, daß andere drauf anspringen um dann für einen die Arbeit tun. Durch den eigenen Einsatz und mit dem Vorweisen von Ergebnissen kann man Andere viel eher zu etwas mitreisen.
Eine weitere Möglichkeit wäre natürlich auch, Leut dafür ein zu stellen, aber die wollen ja auch dann bezahlt werden.
@Xaby
Zwar lese ich aus Deinen Worten eine gewisse Leidenschaft für Deine Projekte oder irgendwie fehlt hier der Tatendrang!
Eine Art Query-Planner soll die Ausführung von Map/Reduce-Funktionen in Hadoop stark beschleunigen.
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

ich finde, Buntsandstein, Granit und Basalt werden total unterbewertet.
ob die Glänzen oder nicht hängt hauptsächlich vom Schliff ab.
und ein (Halb)Edelstein als Bruch und voller Staub sieht auch nicht nach was Besonderem aus.
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
Xaby
Beiträge: 2144
Registriert: 12.11.2005 11:29
Wohnort: Berlin + Zehdenick
Kontaktdaten:

Beitrag von Xaby »

Jetzt mal nicht vom Thema ablenken.

Bild

Streng genommen ist das kein Stein, ist ja nur ein Abbild eines Steines :mrgreen:
Und dann hat der Eisbär natürlich Recht, es gibt viele Sorten von Stein.

So wie es Suppenwürste, Käsewürste und Würste aus Wurst (Fleisch) gibt :)

Zurück zum Thema. ... >>>>>>>>>>>>>>>>>>>>>>>>>>

Das EbenenManagement und die gesamte Verwaltung der Objekte und Sprites,
müsste wohl überarbietet werden. Ich würde verschachtelte LinkedLists nehmen,
wenn ich welche härtte.

Die Frage ist auch, wie man das Konzept der Kinder und Eltern löst.
Also HauptObjekt und angeklebte Objekte. Die wieder angeklebte Objekte
haben können.

Ich dachte erst an eine Rekursion, aber diese kann schnell zu Fehlern führen,
deshalb hatte ich mich entschieden alle Kinder eines Objektes immer
an die Eltern zu übergeben. So sind zwar die Informationen doppelt/mehrfach im Speicher
und es müssen eben auch die Operationen an Kindern und Elternobjekten
jeweils seperat durchgeführt werden,
doch wie gesagt, das schien mir die sicherste Methode zu sein.

Wie genau man die Maus berücksichtigt oder die Benutzung zulässt,
müsste auch noch geklärt werden.

Ich würde sie auf jeden Fall genauso wie auch den Hintergrund als Objekte
verwalten. Ob man nun spezielle Namen für Maus und Hintergrund einführt,
oder extra Funktionen/Prozeduren/Methoden, müsste man auch durchdenken.

Das Ebenenmanagement müsste ebenfalls überarbeitet werden, es sollte
sich selbst besser verwalten. Bei Drag'n'Drop Operationen müssten
die Objekte automatisch nach vorn kommen, sollten aber immer
unter dem Mauszeiger bleiben.

Und hier ist nun das Problem, wie löst man es einfach, aber auch sinnvoll
in der Benutzung, dass man Objekte auch über den Mauszeiger stellen kann,
aber in der Regel die Objekte unter dem Mauszeiger liegen.

Die Ebenenverwaltung muss sich also drum kümmern, dass Standardaufrufe
immer den Mauszeiger als höchstes einstufen. Eventuell müsste man
hier noch eine Prüfung durchführen, ob etwas zu einem Mauszeiger gehört oder nicht.

Beispiel:

Drag'n'Drop Objekte wie Icons, Fenster, verschiebbare Einheiten, Bilder
sind unter dem Mauszeiger

Aber es könnte auch sein, dass man etwas über dem Mauszeiger
anordnen möchte, das kann auch ruhig komplizierter sein, weil es ja nicht
die Regel sein wird.

Dabei denke ich an Tooltips, Sanduhren, Animierte Mauszeiger, Mausschwänze ...

Alles Dinge, auf die man verzichten könnte. Oder die man auch anders
lösen kann.

Das Aussehen des Mauszeigers sollte dann eventuell doch durch verschiedene
Kostüme realisierbar sein. Was ja auch bei Buttons (MouseOver-Effekt)
ne Rolle spielen kann, oder bei Einheiten, die dann heller werden,
oder ihre Farbe ändern, wenn sie markiert sind.

Oder ein bewegter Held, der einfach verschiedene Bewegungsphasen in Bildern hat.

>>>>>>>>>>>>>>>>>>>>>>

Hier wäre auch wieder die Frage, wie realisiert man verschiedene Kostüme.
Entweder als Filmstreifen abgelegt je Objekt und dann mit GrapSprite()
oder ähnlich ...
Oder als einzelne Sprites in einer Liste je Objekt.

Vorteil bei der Liste wäre, dass man auch Bilder einfach rauslöschen kann,
ohne Bilder neu zeichnen zu müssen oder man hat halt viele grafische
Operationen.
Und ein Vorteil wäre, man könnte unter Umständen verschieden große
Kostüme zulassen. Hier wäre auch die Frage, ob man das zulassen möchte.

Man könnte auch jedes Objekt automatisch animieren lassen und
in einem bestimmten Zeitintervall die einzelnen Kostüme abrufen.
Die Animation kann ausgeschaltet werden oder es hat keinen Einfluss,
wenn man nur ein Kostüm pro Objekt hat.

Wenn wir an StrategieSpiele denken, müsste man auch verschiedene
Animationen zulassen pro Objekt.

>>>>>>>>>>>>>>>>>>>>>>>>>>>>

Zurzeit müsste man sich um die Animationen noch selbst kümmern,
da jedes Objekt nur ein Sprite beinhaltet. Mann kann sie unsichtbar machen
oder sichtbar.

Eine Kompatibilität zu "AnimSprite" würde ich für sinnvoll halten.

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

Eine entscheidende Sache wäre noch die Ansteuerung der Grafik.

Entweder: oben links ist 0,0 und unten rechts ist Max, Max
Oder
in der Mitte ist 0,0 ; oben rechts ist Max, Max ; unten rechts ist Max, Min
unten links ist Min, Min; oben links ist Min, Max

Werden die Koordinaten per Ganzzahl angegeben oder per Float?

Und hier kommen wir nun zur Auflösungsfrage.

Erstmal muss die Engine stehen, bevor man ZoomSprite benutzt,
würde ich sagen. Dazu kommt, dass ZoomSprite leider nicht überall
richtig funktioniert. Und es wird ein 3D-Sprite benötigt.

Dies müsste man in der Spriteverwaltung berücksichtigen.

BrainStorming

Und hier seid ihr mit eurem Expertenwissen gefragt,
ich hab halt nur ne Idee mit Vorstellung und ich weiß auch,
dass es realisierbar sein muss. Sonst würde es ja auch keine
Unreal3 Engine geben /:->
Kinder an die Macht http://scratch.mit.edu/
Benutzeravatar
Xaby
Beiträge: 2144
Registriert: 12.11.2005 11:29
Wohnort: Berlin + Zehdenick
Kontaktdaten:

Beitrag von Xaby »

Eine weitere Möglichkeit wäre natürlich auch, Leut dafür ein zu stellen, aber die wollen ja auch dann bezahlt werden.
Hatte schon überlegt, jemanden dafür zu bezahlen.
Aber wer ist in der Lage, so ein Projekt für Geld umzusetzen?
Ich meine, wer von euch kann besser programmieren und hat plötzlich Zeit,
wenn er dafür bezahlt wird? Ich denke, wenn man ein Fachinformatiker ist,
könnte man das Projekt in ca. 2 Wochen durchziehen.
Wenn man wirklich an etwas inovatives so sehr glaubt, muß man sich auch selbst damit befassen und permanet daran arbeiten
Ach, was meinste, was die Klacks.pbi ist? Oder die PDF-Datei?
Die hab ich ja auch nicht nur durch hier Posten zu Stande bekommen.

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

Das Hauptproblem wird sein, dass wir alle nicht richtig programmieren können
und uns gegenseitig nur aufschaukeln. Lieber andere diskriminieren
als uns selbst mal vor den Rechner zu setzen und etwas zu erschaffen.

Ich habe meinen Teil beigetragen. Ich habe den ersten Schritt gemacht.
Eine unfertige, nicht Fehler freie Engine als Konzept vorgestellt.
Und die möchte ich mit euch zusammen nun verbessern


>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

Ich hatte mal einen Kumpel, der war ein Gott mit C# und .NET
Der hatte aber keine Fantasie. Er hatte an einem Mathematikprojekt
gearbeitet und das war's.

Dann hab ich ihm ein paar Dinge vorgeschlagen und wir haben in wenigen
Tagen eine komplette 3D-Engine gebastelt und einen Level-Editor.

Ich habe ihn mit meinen Ideen motiviert und er mich mit seiner
Programmierkunst.

Wenn wir uns immer nur gegenseitig schlechter machen und alles für
Blödsinn halten oder anderen Unfähigkeit unterstellen, werden wir nie
ein Projekt zu Stande bekommen.

Ich investiere auch meine Zeit, in dem ich mich nicht entmutigen lasse
und immer wieder mal das Thema aufkommen lasse.

Ich würde auch lieber mit meiner Engine Bäume versetzen und weitere
Projekte umsetzen. Aber sie ist halt noch nicht fertig und ich bekomme
sie einfach allein nur mittelmäßig fertig und darauf sollen meine
zukünftigen Projekte einfach nicht aufbauen. Sie sollen ein solides
Grundgerüst haben auf das ich mich verlassen kann.

Und deshalb stelle ich euch meine unfertige Idee vor.
Die von mir ausgedacht wurde, aber sicherlich hier und da nicht ausgereift ist.
Ihr kennt euch sicherlich besser mit der Programmierung aus, dann
sagt mir nicht, dass ich es nicht kann, sondern macht Vorschläge, wie man
es richtig macht oder tragt euren Teil dazu bei.

Wenn jeder ein zwei Prozeduren beisteuern würde, wäre die Sache noch
diese Woche soweit, dass wir erste Tests durchführen könnten.

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

Wenn ihr euch mit großen Projekten auskennt, wenn ihr Objekte verwalten
könnt, wenn ihr schon mal ein SpriteHandling geschrieben habt ...
dann macht mit und redet nicht davon, dass es für einen Xaby allein zu
schwer ist.

Es bringt doch keinem was, wenn ihr mir nur sagt, dass ich es nicht schaffe.

Das ist nicht konstruktiv, es bringt das Projekt nicht weiter und ihr zeigt
damit auch nicht, dass ihr mehr oder besser programmieren könnt als Xaby.

:roll:
Kinder an die Macht http://scratch.mit.edu/
Benutzeravatar
Fluid Byte
Beiträge: 3110
Registriert: 27.09.2006 22:06
Wohnort: Berlin, Mitte

Beitrag von Fluid Byte »

Die Länge und Formatierung deiner Posts grenzt an Körperverletzung ...
Windows 10 Pro, 64-Bit / Outtakes | Derek
Benutzeravatar
Xaby
Beiträge: 2144
Registriert: 12.11.2005 11:29
Wohnort: Berlin + Zehdenick
Kontaktdaten:

Beitrag von Xaby »

Ein so umfassendes Projekt handelt man nicht eben in zwei plumpen Sätzen ab.

Genauso hab ich dir Formatierung extra für euch so gemacht.
Damit ihr sie besser lesen könnt. Ihr wisst auch nicht, was ihr wollt.

Seit doch mal konstruktiv. Schreibt mal was zum Thema und nicht nur zu
dem wie ich etwas schreibe oder dass ich mir schon wieder erdreiste zu schreiben :roll:
Kinder an die Macht http://scratch.mit.edu/
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

Xaby hat geschrieben:Genauso hab ich dir Formatierung extra für euch so gemacht.
Damit ihr sie besser lesen könnt. Ihr wisst auch nicht, was ihr wollt.
Formatierung ist gut :allright:
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Antworten