Vektoren und Matrizen
-
Man soll ja immer fein die Logik von der Grafik trennen: Aber was benutzt ihr als Vektor und Matrix Klassen? DirectX bietet etwas an und glm gibt es ja auch noch. Aber wie passt das mit einer gekapselten Grafik API zusammen? Oder benutzt ihr vielleicht gleich etwas selbst geschriebenes?
-
jup, ich nutze was eigenes, die meisten die ich kenne nutzen auch was eigenes, die die das nicht tun, hacken sich was mit der vector lib der graphik api zusammen (z.b. nutzen manche den opengl matrix stack um durch ihren scene-graph zu wandern, im logik durchlauf, also ohne was zu rendern!)
ich nutze was eigenes weil ich das schon seit atari zeiten hatte, ueber die jahre angepasst, von fix-point zu float, von c-code mit m_mul_v4_v4 zu namespace, klassen, operator ueberladungen. wobei ich mitlerweile zwei 'schichten' habe, eine mit klassen, diese nutzt dann aber funktions basierte dinge, z.b. "Mul(out,in1,in2);", die funktionen sind dann pro platform einmal implementiert, die klassen version ist natuerlich gleich. liegt einfach daran dass das meisten mit normaler linearer vector algebra hinkommt. spezielle dinge wie z.b. ein software rasterizer dann aber sehr optimierten code brauchen die jede moeglichkeit nutzt die eine platform bietet, z.b. multiply-add, reciproce+interpolate wo es sich anbietet statt division usw.
sehe keinen grund auf etwas anders umzusteigen. denke das geht vielen so.