OctoAwesome / engenious

A cross-platform game engine for .NET
MIT License
13 stars 4 forks source link

Render / Transformation issues #53

Open HierGibtEsDrachen opened 6 years ago

HierGibtEsDrachen commented 6 years ago

ich zeichne in y- | und x- __ Richtung, die Kamera schaut in negative z - Richtung. Bin von version 1.12 auf Version 1.38, benutze eine leicht abgewandelte Form des simple (Octoawesome) shaders, dieser läuft mit 1.12 einwandfrei...

rotationengenious das kommt raus wenn ich um die z- Achse rotiere.

neigungxengenious und das wenn ich um die x - Achse rotiere. sollte ich Aufgeben, deine Engine zu benutzen? ...

jvbsl commented 6 years ago

ich erkenne weder was nun richtig und was falsch ist, noch was eigentlich heraus kommen sollte. Und was der Unterschied zwischen 0.1.12 und 0.1.36 ist? Außerdem wäre es schön wenn du dann immer auch gleich die aktuellste Version probierst(nur dass es dort normalerweise hierzu nichts gefixt sein sollte)... Auch entscheidend wäre in diesem Fall evt. die CPU und wie du die vertices erstellst, evtl. hat es etwas mit dem SIMD bug zu tun?

Ich empfehle nie jemandem meine engine zu benutzen^^ Sie macht viele Dinge bereits besser als MonoGame, aber ich verspreche nichts, vorallem nicht auf Windows^^

Und Sorry dass ich noch nicht mal nach dem anderen Issue geguckt hab, total verpeilt. Aber deshalb wäre es gut wenn du in den TS kommst, dort kannst mich dann auch so daran erinnern :D

HierGibtEsDrachen commented 6 years ago

das sollte zumindest eine geschlossene Oberfläche sein :) und keine Artefakte.

das obere Bilde (Kreise) entsteht wenn ich um Z rotiere. und das untere (Lamellen) wenn ich um X Rotiere.

so ist es richtig! okterrainengenious

tja was monogame angeht bin ich deiner Meinung und benutze deine Engine.
nicht 1.36 da steht 1.38 :)

jvbsl commented 6 years ago

rotierst du auf GPU oder auf CPU? wie erstellst du die Matrizen?

HierGibtEsDrachen commented 6 years ago

aso das die Kamera, die berechnung läuft auf cpu Projection View World, die matritzen werden mit den funktionen von engenious erstellt. mach das ganz gemütlich mit

Vector3.Transform(vec, mat); meinst du ein test ohne Multithreading bring was?

jvbsl commented 6 years ago

transformierst du nur vektoren oder verwendest du auch andere Operatoren für Vektoren? Also Addition/Subtraktion/Multiplikation/Division? Dann wäre es evtl. mal das Projekt in 32-Bit auszuprobieren, sollte es dann funktionieren sollte es SIMD sein.

Ich glaube ohne Multithreading auszuprobieren dürfte keinen Unterschied machen. Aber jeder Test schließt eine Ursache (zumindest als Alleinverursacher) aus

HierGibtEsDrachen commented 6 years ago

jo addiditionen und multiplikation sind auch dabei... habs in 32 bit probiert, selber effekt, auch ohne multithreading.

deine engine mobt mich :(