Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Menu

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menu

Temas - Netto22

#1
Buenas,

Primeramente, disculpadme si esto ya se a llegado a comentar o simplemente no es el buen lugar. La cosa es que estoy planteandome hacer un curso de iniciacion a C# y a unity, y este lo haria a traves de Gametopia.

Dejando fuera la idea que no es "oficial", que no lo se, en Andorra simplemente teniendo el certificado ya nos vale, la cosa es alguien haya hecho, o conoce a alguien que lo haya cursado, o simplemente conozca alternativas mejores, me podria comentar que tal ve este curso y si tuviera alternativa, cual y porque?

Os dejo el enlace al curso, si estuviera fuera de lugar que moderacion lo quite.

Gracias por todo.

#2
Bueno, ando liado con unos asuntillos y ando bloqueado queriendo hacer un sistema de guardado de partida a traves del tipico menu--> save game y que al cargar ubique las ultimas posiciones.

Tengo configurado ya nfringe para usarlo con visual studio 2010 pero lo unico que encuentro como documentacion es para salvar las posiciones de los objetos, no del jugador tambien.

Algun consejo?
#3
sabeis si hay algun evento en españa que se centre en el encuentro de estudiantes y profesionales del sector? tipo jornadas de puertas abiertas, o similares para poder hacer consultas sobre como llegar a la via profesional, equipo, .... ???
#4
Proyectos / [Pregunta] Juegos para edades cortas? Sugerencias...
09 de Noviembre de 2011, 07:49:23 AM
Buenos dias, estoy apilando ideas para empezar a hacer juegos simples que se vayan a disfrutar a partir de un rango de edad mas bien pequeño, solo que no tengo realmente algo bien pensado y reforzado porque ademas me gustaria que "aprendieran" alguna cosa jugando.

Habia pensado en hacer algo mas bien del estilo de busqueda de pareja o bien de relacion de objetos, pero estoy abierto a cualquier sugerencia.

Por otro lado donde me recomendariais desarrollar esta idea, se que para el manejo del PC tampoco puedo meterme en un target de edad demasiado bajo, pero pensando como son algunos padres hoy en dia que por ejemplo le dejan cualquier tablet a manos, bajo supervision adulta espero xD, pues me abre un poco el abanico de posibilidades. Aunque el PC suele estar en primer lugar.

Kinect podria ser una alternativa no? Que opinais?
#5
Bueno estoy montando la info de un HUD para un juego plataformas 2.5D con la ayuda de otras personas, y he llegado a un punto que para la vida, es decir los corazones, creo que estaria mejor con un Array ya para el momento en el que se tenga que ir quitando, contando, sumando corazones.

El problema es que ahora mismo no se por donde cogerlo y hacer que por ejemplo ID1 sea corazon lleno, y ID2 corazon vacio.

Si quereis os puedo poner el codigo que uso para todo esto.
#6
Buenas,

Tengo una pequeña consulta con esto porque el tilemapping no me sale, y me gustaria saber como poder implementarlo. Os adjunto los archivos de mi codigo a ver si me podeis hechar una mano con ello.

Se que necesito las sentencias RenderImage(), tengo una estructura TileMap, y el RenderTileMap.

Os dejo tambien el codigo tal como lo he encontrado pero no se por donde tirar.

struct TileMap
{
int tile_width, //Ancho y alto de las tiles
tile_height; //(píxeles)
int map_height, //Ancho y alto de todo el mapa
map_width; //(tiles)
int scene_width, //Ancho y alto de la parte visible
scene_height; //por pantalla del mapa (tiles)
int coord_x, //Coordenadas de la parte visible
coord_y; //(píxeles)
Image *images; //Vector de imágenes para cada tile
int **data; //El mapa, la matriz de tiles
};


Creo que  RenderTileMap tiene que ser algo asi:

void RenderTileMap( TileMap *map )
{
int tile;
int Xo = map->coord_x / map->tile_width;
int Yo = map->coord_y / map->tile_height;
int Xf = Xo + map->scene_width - 1;
int Yf = Yo + map->scene_height - 1;
int pos_x = 0;
int pos_y = 0;
for(int i=Yo; i<=Yf; i++)
{
for(int j=Xo; j<=Xf; j++)
{
tile = map->data[i][j];
RenderImage(map->images[tile], pos_x, pos_y);
pos_x += map->tile_width;
}
pos_x = 0;
pos_y += map->tile_height;
}
}


Pero el RenderImage como no sea el dibujado que tengo en el Scene.cpp Draw(); sin animacion no se por donde tirar...

os adjunto por aqui el contenido de cada archivo que tengo.

CScene.cpp
#include "cScene.h"
//#include <GL/glut.h>

cScene::cScene(void)
{
}

cScene::~cScene(void)
{
}


bool cScene::LoadLevel(int level)
{
bool res;

// load tile based map
//....

// Imagenes
res = img.Load("caba.png", GL_RGBA);
frame_seq = 0;
frame_delay = 0;

return res;
}

//Dibujado
void cScene::Draw()
{
float frame;

frame = (float)frame_seq * 0.25f;
glBindTexture(GL_TEXTURE_2D,img.GetID());
glBegin(GL_QUADS);
glTexCoord2f(frame      ,0.5f); glVertex2i(100          ,100          );
glTexCoord2f(frame+0.25f,0.5f); glVertex2i(100+TILE_SIZE,100          );
glTexCoord2f(frame+0.25f,0.25f); glVertex2i(100+TILE_SIZE,100+TILE_SIZE);
glTexCoord2f(frame      ,0.25f); glVertex2i(100          ,100+TILE_SIZE);
glEnd();

glBegin(GL_QUADS);
glTexCoord2f(frame      ,0.5f); glVertex2i(200          ,200          );
glTexCoord2f(frame+0.25f,0.5f); glVertex2i(200+TILE_SIZE,200          );
glTexCoord2f(frame+0.25f,0.25f); glVertex2i(200+TILE_SIZE,200+TILE_SIZE);
glTexCoord2f(frame      ,0.25f); glVertex2i(200          ,200+TILE_SIZE);
glEnd();

glBegin(GL_QUADS);
glTexCoord2f(frame      ,0.5f); glVertex2i(300          ,300          );
glTexCoord2f(frame+0.25f,0.5f); glVertex2i(300+TILE_SIZE,300          );
glTexCoord2f(frame+0.25f,0.25f); glVertex2i(300+TILE_SIZE,300+TILE_SIZE);
glTexCoord2f(frame      ,0.25f); glVertex2i(300          ,300+TILE_SIZE);
glEnd();


glBegin(GL_QUADS);
glTexCoord2f(frame      ,0.5f); glVertex2i(400          ,400          );
glTexCoord2f(frame+0.25f,0.5f); glVertex2i(400+TILE_SIZE,400          );
glTexCoord2f(frame+0.25f,0.25f); glVertex2i(400+TILE_SIZE,400+TILE_SIZE);
glTexCoord2f(frame      ,0.25f); glVertex2i(400          ,400+TILE_SIZE);
glEnd();
frame_delay++;
if(frame_delay == ANIMATION_DELAY)
{
frame_delay = 0;
frame_seq++;
if(frame_seq == 4) frame_seq = 0;

}

}
int* cScene::GetMap()
{
return map;
}


cScene.h
#pragma once
#include "cTexture.h"
#define SCENE_ALTO 64
#define SCENE_ANCHO 64
#define TILE_SIZE 32
#define ANIMATION_DELAY 8

class cScene
{
public:
cScene(void);
virtual ~cScene(void);
// Carga del nivel de la textura en este caso solo 1
bool LoadLevel(int level);
// Accion de dibujado en pantalla
void Draw();

int *GetMap();

private:
int map[SCENE_ALTO*SCENE_ANCHO];

cTexture img;
int frame_seq;
int frame_delay;

};


main.cpp
#include <GL/glut.h>
#include "cGame.h"

#pragma comment(linker, "/subsystem:\"windows\" /entry:\"mainCRTStartup\"")


cGame Game;


void AppRender()
{
Game.Render();
}
void AppKeyboard(unsigned char key, int x, int y)
{
Game.ReadKeyboard(key,x,y,true);
}
void AppKeyboardUp(unsigned char key, int x, int y)
{
Game.ReadKeyboard(key,x,y,false);
}
void AppSpecialKeys(int key, int x, int y)
{
Game.ReadKeyboard(key,x,y,true);
}
void AppSpecialKeysUp(int key, int x, int y)
{
Game.ReadKeyboard(key,x,y,false);
}
void AppMouse(int button, int state, int x, int y)
{
Game.ReadMouse(button,state,x,y);
}
void AppIdle()
{
if(!Game.Loop()) exit(0);
}

void main(int argc, char** argv)
{
int res_x,res_y,pos_x,pos_y;

//GLUT initialization
glutInit(&argc, argv);

//RGBA with double buffer
glutInitDisplayMode(GLUT_RGBA | GLUT_ALPHA | GLUT_DOUBLE);

//Create centered window
res_x = glutGet(GLUT_SCREEN_WIDTH);
res_y = glutGet(GLUT_SCREEN_HEIGHT);
pos_x = (res_x>>1)-(GAME_WIDTH>>1);
pos_y = (res_y>>1)-(GAME_HEIGHT>>1);

glutInitWindowPosition(pos_x,pos_y);
glutInitWindowSize(GAME_WIDTH,GAME_HEIGHT);
glutCreateWindow("My first game!");

/*glutGameModeString("800x600:32");
glutEnterGameMode();*/

//Make the default cursor disappear
//glutSetCursor(GLUT_CURSOR_NONE);

//Register callback functions
glutDisplayFunc(AppRender);
glutKeyboardFunc(AppKeyboard);
glutKeyboardUpFunc(AppKeyboardUp);
glutSpecialFunc(AppSpecialKeys);
glutSpecialUpFunc(AppSpecialKeysUp);
glutMouseFunc(AppMouse);
glutIdleFunc(AppIdle);

//Game initializations
Game.Init();

//Application loop
glutMainLoop();
}


Gracias y perdonad el tocho.
#7
Buenas,

Estoy decidido a comprarme un libro de C/C++ y en vista que he encontrado un par, me asaltan las dudas sobre la "calidad" de los mismos.

Esperando obtener un poco de consejo sobre cual de ellos es mejor, o mas completo, os dejo las referencias de los libros.

Uno seria este:



" C/C++ CURSO DE PROGRAMACION (3ª ED)
de CEBALLOS, FRANCISCO JAVIER
RA-MA 2007 
     708 pags
Lengua: CASTELLANO
Encuadernación: Tapa blanda
ISBN: 9788478977628
Colección:
Nº Edición:3ª
Año de edición:2007
Plaza edición: MADRID"

Otro seria este:



" ENCICLOPEDIA DEL LENGUAJE C++ (INCLUYE CD)
de CEBALLOS, FRANCISCO JAVIER
RA-MA 2003
19.0x25.0 cm      1120 pags
Lengua: CASTELLANO
Encuadernación: Tapa blanda
ISBN: 9788478975846
Colección:
Nº Edición:1ª
Año de edición:2003
Plaza edición: MADRID"

Son estos dos que mas o menos he estado mirando. Si hubiera alguno mas que tuviera que tener en cuenta decidmelo.

Muchas gracias por adelantado.
#8
Alguien me podria decir si existe algun compilador que pueda transportar en un pendrive para que en los momentitos libres de mi curro pudiera testear algunos codigos en C++ para ver resultados y depurar, programar otros nuevos?

Mi portatil no es que lo sea mucho xD y en el lugar de trabajo no tengo permisos de administrador.
#9
Bueno comento el caso, ante todo no se si este es su lugar puesto que es un tema mas bien general, cuando hoy fui a hacer nuestro programa de radio, el tecnico de sonido me pregunto si conocia a alguien que desarrollara videojuegos de forma activa, y a poder ser dentro de una compañia, para que pudiera preparar una entrevista para un jueves, el llamara desde el estudio y la entrevista se realizara telefonicamente.

Como en Andorra, no hay nadie que se dedique a ello, y tampoco hay ningun centro donde enseñen esto, no podemos encontrar a nadie del pais para poder entrevistar, asi que tenemos que salir fuera de las fronteras andorranas para ello.

Sabiendo que por aqui se mueve mucho este tema, pues se me ocurrio de preguntar por aqui.

Interesados poneros en contacto conmigo por Privado y le explicare con mas detalle el asunto, si algun moderador del foro quiere mas informacion estoy a su total disposicion.

P.D: La radio en cuestion es Andorra7Radio

Gracias de antemano
#10
General Programadores / unload_png ? Problema en Fenix¿?
04 de Febrero de 2009, 07:24:29 PM
Tengo este pequeño problema con Fenix, y es que tengo varias imagenes que cargar y normalmente las tengo en FPG, pero tengo solamente un fondo que no se si crear un FPG solamente para este fondo, ya que es estatico, si fuera por ejemplo a cada cambio de punto un fondo diferente me lo pondria pero al ser uno solo... nu se.

El conflicto me viene despues, en maquinas modernas me da lo mismo pero quiero que tambien pueda ejecutarse en una maquina antigua, es una cosa muy simple no quiero empezar mas fuerte, y entre musica imagen y movimiento no se si el desgaste de RAM puede ser importante para un ordenador con pocos recursos.

Se descargar memoria de un FPG pero no de un png suelto, es que falta esa opcion en el lenguage de fenix, o la orden unload_png no es la correcta?
#11
Bueno quiero pasar un programa que tengo escrito en Fenix a C++ y despues ese codigo optimizarlo y usarlo con SDL.

El problema, bueno no es un problema, sino que la duda esta en si hay algun procedimiento o algun consejo que tuviera que tener en cuenta a la hora de "reprogramarlo".

Tengo toda la reparticion del codigo bien escalonada y la tengo bien comentada. La idea seria de pasarlo tal cual, a C++ y despues intentar optimizarlo pasandolo a SDL y en este punto empezar a declarar las cosas como objetos. De momento estoy hacendo algo "al aire", para acabar de familiarizarme, y escribiendo en papel las posibilidades que tengo pensadas.
#12
Principiantes / Consultas de unas partes de codigo.
22 de Noviembre de 2008, 12:45:43 AM
Estoy realizando, gracias a los tutos que anteriormente me disteis, los primeros pasos en esto y en el desarrollo del codigo del Pong me han salido varias complicaciones al intentar "entender" una parte del codigo que seria mas bien esta.



// Colisiones con Paleta 2
if(Velocidad_Bola_X >0 && X_Bola<X_Paleta_2 //Si la bola esta en zona de colisionar con la paleta 2
&& X_Bola+Ancho_Bola/2>=X_Paleta_2-Ancho_Paleta_2/2)


Es un extracto del codigo que escribi.

La cosa es que entiendo la gran parte del codigo y podria volver a hacerlo y quizas optimizarlo un poco en ciertas partes, pero no comprendo el porque hay a veces divisiones a la mitad de algunas variables o multiplicaciones de 0.5.
Es porque la bola tiene que colisionas con "la mitad de esa variable"? es decir con una de las mitades de la barra (en el caso de las paletas la parte orientada hacia el "campo" de ahi que se use la parte de la coordenada X)?

Pero al ser eso no lo pillo porque si busca el contacto con la variable X en su parte > o =  no seria mas bien este esuqema?                |< - - - y no - - - >| ????

Despues otra consulta que tengo es que tengo todo hecho hasta que la bola desaparece por algun lado, en este caso deberia volver a declarar el inicio del juego con un if?
#13
Buenas,

Estoy intentando realizar un trabajo de busqueda para crear un dossier de fuentes para un "librito" que quiero hacer para un grupillo de gente que se quiere empezar a iniciar en esto.

Lo unico es que o bien encuentro manuales muy "poco trabajados", o no encuentro nada de nada.

Creaba este hilo para ver si desde aqui me podriais indicar webs o tutos sobre la iniciacion a la creacion de videojuegos, estoy hablando a proyectos tipo PacMan o Pong.

De paso indicar cual es el mejor compilador, programa, o interprete para empezar con esto plis.

Muchisimas gracias de antemano por todo.
#14
Estoy intentando hacer una app que sea una "herramienta" simple de calculo, con el consecuente codigo.

//---------------------------------------------------------------------------

//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop

#include "Practica10bis.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
    : TForm(Owner)
{
}
//---------------------------------------------------------------------------

void __fastcall TForm1::rdobasicosClick(TObject *Sender)
{
    cbooperador->Enabled=true;
    cbooperador->Visible=true;
    cbooperador->Clear();
    cbooperador->Items->Add("+ (Suma)");
    cbooperador->Items->Add("* (Multiplicar)");
    cbooperador->Items->Add("- (Resta)");
    cbooperador->Items->Add("/ (Division)");

}
//---------------------------------------------------------------------------
void __fastcall TForm1::rdootrosClick(TObject *Sender)
{
    cbooperador->Enabled=true;
    cbooperador->Visible=true;
    cbooperador->Clear();
    cbooperador->Items->Add("% (Resta de division)");
    cbooperador->Items->Add("Concatenacion");
}
//---------------------------------------------------------------------------
void __fastcall TForm1::btncalcularClick(TObject *Sender)
{
    double Operando1, Operando2;
    AnsiString Operador;
    Operando1 = atof(txtoperando1->Text.c_str());
    Operando2 = atof(txtoperando2->Text.c_str());
    Operador = cbooperador->Text;

    if (Operador == "+ (Suma)")
        txtresultado->Text = Operando1 + Operando2;
    if (Operador == "- (Resta)")
        txtresultado->Text = Operando1 - Operando2;
    if (Operador == "* (Multiplicacion)")
        txtresultado->Text = Operando1 * Operando2;
    if (Operador == "/ (Division)")
        txtresultado->Text = Operando1 / Operando2;
    if (Operador == "% (Resto de division)")
        {
        int Operando1_1 = atoi(txtoperando1->Text.c_str());
        int Operando2_1 = atoi(txtoperando2->Text.c_str());
        txtresultado->Text = Operando1_1 % Operando2_1;
        }
    if (Operador == "Concatenacion")
        txtresultado->Text = txtoperando1->Text + txtoperando2->Text;
}
//---------------------------------------------------------------------------


Vale tras algunas modificaciones y ayudas de unos cuantos colegas, he depurado finalmente el codigo y lo tengo funcional ^^

Gracias de todas maneras ^^
#15
Principiantes / Que pensais del Game Creator de Microsoft?
29 de Septiembre de 2008, 09:02:57 PM
Pues eso que lo acabo de ver y parece tener bastante buena pinta, que opinais de esto? utilizado con visual studio C++ 2008 puede ser una herramienta buena para trabajar en ella?
#16
Vereis estoy realizando un cursillo de C++Builder y al finalizar me quiero proponer el reto de realizar un programa para un colega mio de gestion que me ha pedido y lo veo realmente factible a mi nivel.

La pregunta es, que este colega me quiere pagar por el trabajito este y aqui es donde empiezan mis dudas, que debo hacer para poder "Vender" este programita, aunque sea a nivel de circulo amistoso.

No tendre ningun tipo de problema? Tampoco quiero registrar nombres ni marcas puesto que no usare ni pondre un nombre al programa, no es mi interes tenerlo y renovarlo mas adelante para otras personas, ni tengo conocimientos necesarios ni dinero para registrar todas las cosas.

Que me recomendais?

P.D: Esto es un proyecto a bastante largo plazo.
#17
Principiantes / Buenas soy nuevo y con dudas...
27 de Agosto de 2008, 02:32:31 PM
quiero estudiar diseño y desarrollo de videojuegos en general tocando todos los temas un poco aun no estoy decidido en que decantarme si en la parte de codigo o en la de animacion.

Tenia pensado hacer este año, o dos, el cursillo este de creavideojuegos.com, veo que toca bases de un poco muchas cosas. mientras trabajo y me saco unos ahorrillos para mi siguiente paso... Ir a Madrid a hacer el master de Desarrollo de videojuegos que tienen en la CICE.

Ahora mismo tengo 23 tacos, asi que dentro de 2 años puedo incluso meterme en la uni por prueva de acceso, ahora mismo tengo varios FPs de grado medio, y nociones de Turbo Pascal.

Que me recomendariais?





Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.