http://code.google.com/hosting/

de esta forma podemos tener un SVN, y vamos a poder trabajar sobre un repositorio común, hosteado por google.
la dinámica de laburo se hace muy copada con svn, la idea es que está todo en el repositorio y uno tiene una copia local.
las operaciones básicas son checkout para bajar del repositorio y commit para subir. y muchas otras cosas interesantes.
para manejar un SVN hay muchas formas, yo uso tortoise http://tortoisesvn.tigris.org/ que es una extesión del windows, pero hay muchos programas y plugins http://subversion.tigris.org/links.html#clients

con google code además tenemos un wiki. y nos da visibilidad en google.

lo que hay que resolver es que con esto el código va a ser abierto, es decir que va a ser bajable por cualquiera que lo encuentre en google code (no se si se puede hacer privado), cualquier puede hacer un checkout via svn, pero solo los miembros pueden hacer commit.
por otro lado hay que meterle una licencia opensource, con lo cual habría que decidir cual usar.

detección de colisiones

Abril 16, 2008

detección de colisiones

Abril 16, 2008

class Rect
{
int x, y, w, h;

Rect ( int xx, int yy, int ww, int hh )
{
x = xx; y = yy;
w = ww; h = hh;
}

boolean intersects ( Rect r )
{
// for positive values of w and h only.
// you have to check and flip values if they might be negative.
//

return !( x > r.x+r.w || x+w < r.x || y > r.y+r.h || y+h < r.y );
}
}

Processing + Eclipse

Abril 15, 2008

http://dev.processing.org/reference/everything/javadoc/processing/app/preproc/PdePreprocessor.html



aca esta todo lo referido al preprocesador de processing, o sea, todas las clases que usa el IDE para convertir el .pde en codigo JAVA.

esto es lo que hay que estudiar a fondo para usar processing en Eclipse.

 y aca va el post inciatico:

http://processing.org/discourse/yabb_beta/YaBB.cgi?board=Integrate;action=display;num=1117133941

ahi esta todo de como hacerlo andar.

Rotar 3D

Abril 15, 2008

rotador… todos los que encontre usan matematica de matrices.

http://v3ga.free.fr/Java/ArcBall/
http://www.chronotext.org/bits/030/

la verdad de la milanga sobre matrices para escribir programas en 3d

http://www.geocities.com/SiliconValley/2151/matrices.html

todo viene de una matematica de Quaternios:

http://en.wikipedia.org/wiki/Quaternion
http://mathworld.wolfram.com/Quaternion.html

todo lo que hay que saber:

http://www.j3d.org/matrix_faq/matrfaq_latest.html

3D a 2D

Abril 15, 2008

processing usa proyeccion ortografica

http://en.wikipedia.org/wiki/Orthographic_projection

basicamente lo que hace es meter todo en una especie de caja y lo que vos ves (en el 2d del applet) es siempre la vista de alguna de esas caras. Ahora le agregaron la funcion perspective();

http://processing.org/learning/examples/perspective.html

que te permite cambiar el POV (point of view) y la perspectiva lo que hace que efectivamente, la relacion entre la distacia z y la proyeccion en la pantalla haga que los objetos mas lejanos ( < z) se vean mas chicos en proporcion a como se verian en modo normal.
Lo que hace es generar una imagen mas ajustada al mundo real.

por el contrario, la funcion ortho(); hace que todos los objetos con el mismo tamano se vean iguales no importa la distancia…

http://processing.org/learning/examples/ortho.html

3D

Abril 15, 2008

var scaleRatio = focalLength/(focalLength + pointIn3D.z);

pointIn2D.x = pointIn3D.x * focalLength/(focalLength + pointIn3D.z);
pointIn2D.y = pointIn3D.y * focalLength/(focalLength + pointIn3D.z);

http://www.kirupa.com/developer/actionscript/3dwireframe.htm