Main Menu
Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Messages - Telix

#1
German corner / 3D Picking ohne Object3D
December 06, 2013, 10:31:25 AM
Hallo zusammen,

lang ist es her aber nun eine neue Frage :)

Wie kann ich mit reproject2D3DWS ein "pick" machen ohne Object?
Ich bekomme ja denke ich mit reproject2D3DWS die Daten abhängig der Kamera im Wert von -0.5 -> 0.5 in  beide Seiten?

Frage wie berechne ich nun die X,Y,Z Kordinate dazu?

Vielen Dank! :)
#2
German corner / Re: Texture Aufteilung
November 27, 2013, 08:10:05 PM
was bewirkt genau setClamping(true);?

Hab es nun auf jeder Texture. Kann das schaden? Performance Verlust?
#3
German corner / Re: Texture Aufteilung
November 27, 2013, 08:08:05 PM
Das hat funktioniert :) danke!
#4
German corner / Helligkeit
November 27, 2013, 08:02:04 PM
Hallo zusammen,

wie bekommt man am besten die Gesamt Helligkeit im Spiel gesteigert?
Mit AmbientLight habe ich es schon probiert. habe es auf 255,255,255 gesetzt.
Jedoch wirkt trotzdem alles noch recht dunkel :(

Light würde ich ungern nutzen, da es Performance kostet und die Würfel unhübsch belichtet werden.

Gibt es eine Alternative?
#5
German corner / Re: Texture Aufteilung
November 27, 2013, 01:17:13 PM
Nun habe ich nur noch schwarze Polys


TextureInfo stoneTex = new TextureInfo(TextureManager.getInstance().getTextureID(textureName));
stoneTex.add(TextureManager.getInstance().getTextureID("fow_left"), TextureInfo.MODE_MODULATE);

// Upper
addTriangle(upperLeftBack, upperLeftFront, upperRightBack, stoneTex);
addTriangle(upperRightBack, upperLeftFront, upperRightFront, stoneTex);



#6
German corner / Re: Texture Aufteilung
November 27, 2013, 11:26:03 AM
unter android hat die methode addTriangle leider nur ein parameter für TextureID nicht für TextureInfo.
Gibt es noch ein anderen Weg? Gibt es ein Problem / Issue im PolyManager?
#7
German corner / Re: Texture Aufteilung
November 27, 2013, 10:31:55 AM
Am würfel selbst mach ich kein build oder strip selbst.

ich habe nun folgendes ausprobiert mit dem selben Ergebnis:


int maxPolyID = _polygonManager.getMaxPolygonID();
for (int i = 0; i < maxPolyID; i++) {
_polygonManager.setPolygonTexture(i, stoneTex);
}


Den Rand sieht man ganz links und ist ca. 1 px breit. Würde sagen, dass er die 2. Texture nicht richtig passend gesetzt hat?
Also dass man die untere ein wenig sieht. Hab das Bild nochmal überprüft und es ist füllen also kein unabsichtlichen Rand im Bild.
#8
German corner / Re: Berechnung Rotation
November 27, 2013, 10:22:29 AM
arg -.- das is mir nun aber peinlich :(

ich hab das rausgenommen, da ich dachte ich verändere die Z Achse garnicht.
Sorry :( nun gehts...
#9
German corner / Re: Texture Aufteilung
November 27, 2013, 10:20:03 AM
Der Name ist evtl. irreführend.
Jedoch füge ich 2 Polys hinzu nur diese 2 mehr gibts nicht sprich 0 und 1.
Es wird auch eine Texture angezeigt nur aber einfach eine Farbe ohne Texture.


So sieht es aus mit SetTexture:
https://drive.google.com/file/d/0B26BJ5tHhzH_ajhYdDI0TFp6QWc/edit?usp=sharing

So über den PolyManager:
https://drive.google.com/file/d/0B26BJ5tHhzH_MDRfSTFSSEJ1dlU/edit?usp=sharing

Desweiteren habe ich bei SetTexture ein recht unhübschen Rand. Woran liegt das?
#10
German corner / Re: Texture Aufteilung
November 27, 2013, 10:01:25 AM
ok das schaut besser aus :)

jedoch habe ich nun ein kleines Problem:
mit dem PolygonManager klappt es nicht :( Mit SetTexture aber schon.
Jedoch benötige ich das ja für 2 Polys nur :(

   
TextureInfo stoneTex = new TextureInfo(TextureManager.getInstance().getTextureID(textureName));
stoneTex.add(TextureManager.getInstance().getTextureID("fow_left"), TextureInfo.MODE_MODULATE);

// _polygonManager.setPolygonTexture(maxPolyCount, stoneTex);
// _polygonManager.setPolygonTexture(maxPolyCount+1, stoneTex);

setTexture(stoneTex);
#11
German corner / Re: Berechnung Rotation
November 27, 2013, 09:47:45 AM
Also das mit der 35 ist nun weg und ich bekomme direkt den Wert zum drehen.
Jedoch nur für links und rechts :( Bei Oben und Unten bekomme ich immer 0.

startVector = 6,0,6
endvector = 6,0,7

oder

endVector = 6,0,5


public void lookAt(SimpleCord pos) {
SimpleVector startVector = this.getTranslation();
SimpleVector endVector = new SimpleVector(pos.X * 2, startVector.y, pos.Y * 2);

SimpleVector diffVector = endVector.calcSub(startVector);
Matrix mat = diffVector.getRotationMatrix(new SimpleVector(0, -1, 0));

Log.w("STARTVECTOR", startVector.toString());
Log.w("ENDVECTOR", endVector.toString());

float angle = (float) deriveAngle(mat);
clearRotation();
rotateY(angle + (float)(0.5f * Math.PI));
Log.w("ANGLE", Float.toString(angle));
}


public float deriveAngle(Matrix mat) {
// float y = (float) Math.asin(Math.min(1f, Math.max(-1f, -mat.get(0, 2))));
float y = (float) Math.asin(-mat.get(0, 2));
return y;
}
#12
German corner / Re: Berechnung Rotation
November 26, 2013, 03:59:17 PM
Das ist leider nicht mein Problem :(
Ich hab mir mal die Zahlen genau angeschaut und an sich ist der Weg schon der richtige.

Siehe Tabelle:
https://docs.google.com/spreadsheet/ccc?key=0Am6BJ5tHhzH_dFYwek9Ba215Z183NlFtYnJ3eDVMalE&usp=sharing

Frage ist, warum der Wert so klein ist und ich diesen mit 35 mal nehmen muss?
Und warum erhalte ich bei nach Oben und Unten schauen beides eine 0?

Somit kann ich nicht entscheiden ob er nach oben oder unten schauen muss :(

Danke!!
#13
German corner / Re: Texture Aufteilung
November 26, 2013, 03:05:25 PM
ich lade alle meine Texturen mit folgendem Befehl:


private void addTexture(int id, String name) {
Texture newTexture = new Texture(getResources().getDrawable(id), true);
TextureManager.getInstance().addTexture(name, newTexture);
}
#14
German corner / Re: Texture Aufteilung
November 26, 2013, 01:24:19 PM
korregiert :) sorry ^^
#15
German corner / Re: Texture Aufteilung
November 26, 2013, 08:51:59 AM
Auch hier bin ich zu blöd :(


addTriangle(upperLeftBack,0,0, upperLeftFront,0,1, upperRightBack,1,0);
addTriangle(upperRightBack,1,0, upperLeftFront,0,1, upperRightFront,1,1);
   
TextureInfo stoneTex = new TextureInfo(TextureManager.getInstance().getTextureID(textureName));
stoneTex.add(TextureManager.getInstance().getTextureID("fow_left"), TextureInfo.MODE_ADD);

_polygonManager.setPolygonTexture(maxPolyCount, stoneTex);
_polygonManager.setPolygonTexture(maxPolyCount+1, stoneTex);


Bild1: https://drive.google.com/file/d/0B26BJ5tHhzH_REhVRkU5VVJpdjQ/edit?usp=sharing
Bild2: https://drive.google.com/file/d/0B26BJ5tHhzH_WlpiLUlXb1Vhd3M/edit?usp=sharing

Und so schaut es bei mir aus: https://drive.google.com/file/d/0B26BJ5tHhzH_ZVY2ZnZsODY5S1U/edit?usp=sharing
Danke schonmal!