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

Mensajes - The_Dragon_Ladis

#91
General / Re: Encuesta sobre CDV 2010
11 de Septiembre de 2010, 11:57:39 PM
Perdonad mi infinita ignorancia, pero, ¿Que es la CDV?
#92
XNA / Re: Spermatozoon Attack
11 de Septiembre de 2010, 11:34:28 AM
Pues esta muy gracioso :P

Seguro que tiene que ser un pique en multijugador xD
#93
Muchas gracias por las dos aclaraciones. Funciona como la seda. No encontraba ningún sitio donde lo explicara claramente, o quizás es que a esas horas yo no estaba muy lúcido para entenderlo... En cualquier caso muchas gracias ^^
#94
General Programadores / Win32 y mis amigos los botones con icono...
10 de Septiembre de 2010, 02:27:21 AM
Pues eso... tengo un problema para crear botones con iconos o bitmaps. He buscado en internet y cada uno lo hace de una manera distinta, pero el caso es que nunca consigo hacer que funcione.

Esta es la ventana de mi aplicación:


Los tres cuadrados que se ven arriba deberían ser ser tres botones con forma de icono, que serían estos:


El caso es que, como veis, no consigo hacer que se vean los iconos. He probador mil cosas distintas de mil webs, y ninguna termina de funcionar. He probado con archivos de recursos, cargando los iconos directamente con LoadIcon() y LoadImage(), e incluso definiendolos como una ventana más WS_CHILD y añadiendo el stilo BS_ICON, pero claro, según la documentación que hay en MSDN y he leído en Internet, después hay que hacer una llamada a SendMessage() con el tipo de mensaje BM_SETIMAGE, pero tampoco funciona. Llevo toda la noche dandole vueltas y no consigo hacer que funcione. No creo que sea tan difícil hacer un puñetero botón, así que debo estar comprendiendo mal algun concepto o equivocándome en alguna cosa tonta.

// Archivo de recursos

#include <Windows.h>
#include "ids.h"

IDI_TOOLKYENS ICON "images/icons/toolkyens.ico"
IDI_TOOLKYENS_SMALL ICON "images/icons/toolkyens_small.ico"
IDI_SOUNDGEONS ICON "images/icons/soundgeons.ico"
herocreator_ico ICON "images/icons/hero_creator.ico"
worldcraft_ico ICON "images/icons/worldcraft.ico"

IDB_BACKGROUND_INI BITMAP "images/backgrounds/ini.bmp"



//
// Aqui se definen los distintos identificadores
//

#define IDC_INIWND 100

//Iconos
#define IDI_TOOLKYENS 1001
#define IDI_TOOLKYENS_SMALL 1002
#define IDI_SOUNDGEONS 1003

//Fondos
#define IDB_BACKGROUND_INI 1100

//Botones
#define IDB_INIEXIT 1204
#define IDB_INISOUND 1205
#define IDB_INIHERO 1206
#define IDB_INIWORLD 1207



// Area de includes
#include "stdinc.h"
#include "iniWnd.h"

#define MAX_LOADSTRING 100

//Variables globales
HINSTANCE hInst;
TCHAR szTitle[MAX_LOADSTRING];
TCHAR szWindowClass[MAX_LOADSTRING];
HWND hIniWnd;
//Botones
HWND bExit;
HWND bSound;
HWND bHero;
HWND bWorld;

//Iconos
HICON iSound;

UINT horizontalSize;
UINT verticalSize;

//HDC
HDC hdc;

// Area de prototipos
LRESULT CALLBACK iniWndProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam); //Procedimientos de la ventana de Inicio

// Main de la aplicacion

int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPTSTR lpCmdLine, int nCmdShow)
{
//Variables
MSG msg;
WNDCLASSEX winClass;
LOGBRUSH background;

//Usamos hInstance como global
hInst = hInstance;

// Obtenemos los valores de la resolucion actual
hdc = GetDC(hIniWnd);
horizontalSize = GetDeviceCaps(hdc,HORZSIZE);
verticalSize = GetDeviceCaps(hdc,VERTSIZE);

//Cargamos la imagen de fondo
background.lbStyle = BS_PATTERN;
background.lbHatch = (long) LoadImage(hInstance,TEXT("images/backgrounds/ini.bmp"),IMAGE_BITMAP,0,0,LR_LOADFROMFILE);

//Cargamos los iconos
iSound = (HICON)LoadIcon(hInst,MAKEINTRESOURCE(IDI_SOUNDGEONS));

//Definimos las propiedades de la ventana
winClass.hInstance = hInstance;
winClass.lpszClassName = "Inicio";
winClass.lpfnWndProc = iniWndProc;
winClass.style = CS_HREDRAW | CS_VREDRAW;
winClass.cbSize = sizeof(WNDCLASSEX);
winClass.hIcon = LoadIcon(hInstance, MAKEINTRESOURCE(IDI_TOOLKYENS));
winClass.hIconSm = LoadIcon(NULL, MAKEINTRESOURCE(IDI_TOOLKYENS_SMALL));
winClass.hCursor = LoadCursor(NULL, IDC_ARROW);
winClass.lpszMenuName = NULL;
winClass.cbClsExtra = 0;
winClass.cbWndExtra = 0;
winClass.hbrBackground = CreateBrushIndirect(&background);

//Registramos la vetana
if(!RegisterClassEx(&winClass))
return 0;

//Creamos la Ventana
hIniWnd = IniWndCreate(hInstance,(UINT)horizontalSize/2,(UINT)verticalSize/2,900,400);

//Mostramos la ventana
ShowWindow(hIniWnd,SW_SHOWDEFAULT);
ShowWindow(bExit,SW_SHOWDEFAULT);
UpdateWindow(hIniWnd);


//Bucle de mensajes
while(GetMessage(&msg,NULL,0,0))
{
if(!IsDialogMessage(hIniWnd,&msg))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
}

return (int) msg.wParam;

}


//Declaraciones

LRESULT CALLBACK iniWndProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
{

switch (msg)
{

case WM_CREATE:
//TODO: Codigo para los botones

bExit = CreateWindowEx(0,"BUTTON","Salir",
BS_DEFPUSHBUTTON |WS_CHILD | WS_VISIBLE | WS_TABSTOP,
830,370,
50,20,
hWnd,(HMENU)IDB_INIEXIT,hInst,NULL);
bSound = CreateWindowEx(0,"BUTTON","Soundgeon",
WS_CHILD | WS_VISIBLE | WS_TABSTOP | BS_ICON,
100,10,
100,100,
hWnd,(HMENU)IDB_INISOUND,hInst,NULL);
SendMessage(hIniWnd,BM_SETIMAGE,IMAGE_ICON,(LPARAM)iSound);

DrawIconEx(hdc,100,25,(HICON)iSound,100,100,0,NULL,DI_NORMAL);

bHero = CreateWindowEx(0,"BUTTON","Hero",
WS_CHILD | WS_VISIBLE | WS_TABSTOP | BS_ICON,
400,10,
100,100,
hWnd,(HMENU)IDB_INIHERO,hInst,NULL);

bWorld = CreateWindowEx(0,"BUTTON","Hero",
WS_CHILD | WS_VISIBLE | WS_TABSTOP | BS_ICON,
700,10,
100,100,
hWnd,(HMENU)IDB_INIHERO,hInst,NULL);

break;

case WM_DESTROY:
PostQuitMessage(0);
break;

case WM_COMMAND:
switch(wParam)
{
case IDB_INIEXIT:
PostQuitMessage(0);
break;
}

break;

default:
return DefWindowProc(hWnd, msg, wParam, lParam);
}

return 0;
}


Si alguien puede hacerme un resumen o explicación rápida de como crear un botón de tipo icono de alguna de esas tres formas le estaria eternamente agradecido, porque ya estoy picado con el tema, y cuando empiezo a aprender algo puedo pasar horas y horas (mirad las horas que son y voy a acostarme porque tengo que estudiar, sino aquí podría quedarme hasta sacarlo...).

Un saludo amigos ^^
#95
Modelado / Re: Como empezar en esto?
09 de Septiembre de 2010, 04:53:36 PM
Pues si, de hecho, en el CS4 ya puede hacerse. Yo lo he trasteado :P

Yo no trabajo en esto, pero según he leido hace falta saber un poco de todo para utilizar en cada momento la herramienta que mejor te venga.
#96
Dibujo / Re: Presentación y portafolio.
09 de Septiembre de 2010, 04:47:33 PM
Bienvenido a esta nuestra comunidad.

Yo no soy muy de dibujar, que no es que se me de mal, pero por desgracia no tengo tiempo para ello. Programar me quite demasiado tiempo :P
#97
Proyectos / Re: Amnesia: The Dark Descent - Demo publicada!
09 de Septiembre de 2010, 04:35:35 PM
@RaTHSoDiC, tranquilo, que no me he sentido atacado ni nada de eso. Solo aclaraba que no estaba a favor de ningún sistema por ser fan incondicional ni nada de eso. A mi tampoco me gusta el invento de Kinect, lo han orientado de forma muy casual, cuando podrían hacerse cosas muy chulas enfocándolo de otra manera (véase este juego).

@H-K tengo una pregunta. ¿Cuando estas cerca de la luz, recuperas cordura lentamente o solo cuando estas tirado en el suelo (es desesperante T__T) para llegar a un mínimo?
#98
Programación de audio / Re: Problema con alut.dll
09 de Septiembre de 2010, 04:30:27 PM
Muchas gracias por el tutorial, ya te digo que yo no conseguía encontrar uno que no usara ALUT.

Si dices que cargar un .wav será más complicado, no quiero imaginarme como será para cargar un .mp3, que es lo que necesito para mi aplicación xD
#99
Proyectos / Re: Amnesia: The Dark Descent - Demo publicada!
07 de Septiembre de 2010, 03:16:15 PM
Pues yo creo que la sensación de ser tu mismo el que abra la puerta con el gesto de tu brazo tiene que suponer una inmersión muchísimo mayor que sujetar el mando de la Wii + Nunchaku. Y los sonidos del mando de la Wii siempre me han sonado a jaula de grillos, así que dudo que un sonido estridente que salga de un mando de Wii pueda ayudar al ambiente de terror del título. Asomarse por las esquina tampoco seria lo mismo, etc. Este juego va de ambientación, de meterte en la piel del personaje, y creo que Kinect seria el mejor sistema para ello, ya que se reproducen los movimientos de tu cuerpo (no de un mando que estas sujetando).

Y no, no soy ningún Xboxer, ni Sonyer ni ninguna tontería de esas, solo es mi humilde opinión y las razones por las que creo que estaría mejor usando ese dispositivo.
#100
Proyectos / Re: Amnesia: The Dark Descent - Demo publicada!
07 de Septiembre de 2010, 11:44:29 AM
Pues fíjate que yo estaba pensando más en Kinect... Seria una propuesta bastante interesante. Lo malo, como siempre, seria andar hacia adelante, lo lados y demás (saltar se supone que puedes saltar tu mismo...), pero lo que seria asomarse a las esquinas, abrir las puertas e interactuar con los objetos tiene que ser una pasada.
#101
Programación de audio / Re: Problema con alut.dll
07 de Septiembre de 2010, 11:37:48 AM
Vaya, pues poniéndolo donde está el ejecutable desaparece el error. No sabia que hubiera que ponerlo junto con el ejecutable. Tampoco es que haya trabajado mucho con librerías por ahora en la carrera y con OpenGL no necesité copiar nada (incluido GLUT).

¿Porque lo uso? Pues porque no encuentro tutoriales que expliquen OpenAL sin hacer uso de alut. Cuando aprenda y si encuentro algún tutorial que explique como hacerlo, preferiría no depender de alut ni de GLUT.

Muchisimas gracias por la ayuda. Si además me explicaras porqué hay que poner el .dll ahí para aprender te estaría eternamente agradecido.

Un saludo y gracias de nuevo ^^
#102
Principiantes / Re: Equipo de desarrollo BCN TGN
06 de Septiembre de 2010, 11:23:22 PM
No estaba hablando de tu caso eh! Hablaba en general, no te lo tomes como una critica ni nada, simplemente salió el tema y lo seguí.

Ilusión esta claro que tenemos todos, pero hasta que uno no ve las tripas de la bestia cree que hacer un videojuego es otra cosa. Algo fácil, como usar el editor del Warcraft III para hacer mapas y cosas así.
#103
Principiantes / Re: Equipo de desarrollo BCN TGN
06 de Septiembre de 2010, 10:04:29 PM
Creo que quiere hacer un símil de las personas de las que hablamos, que tienen muy buena voluntad y ganas de hacer un videojuego, pero no saben todos los conocimientos que requiere el más simple de ellos. Física, inteligencia artificial, modelado, animación... Me gusta decir que los Desarrolladores de videojuegos son como pequeños dioses que crean su universo particular con sus propias leyes físicas :P
#104
Proyectos / Re: Amnesia: The Dark Descent - Demo publicada!
06 de Septiembre de 2010, 10:01:53 PM
Pues no lo había visto... cuando entro al foro le doy directamente a ver los mensajes nuevos, pero ese no lo había visto :(

La demo me encantó, pero no he podido dedicarle más tiempo por los exámenes. En cuanto pueda continuaré (estoy en la parte del agua ^^). Me gusta mucho el tipo de control que habéis implementado. Quiero decir... es una mierda, pero en el buen sentido de la palabra. Te agobia mucho y te hace meterte bastante, sobretodo en los momentos que tu cordura está por los suelos (a la par que tu). Podría tirarme un buen rato comentando cosas que me han gustado y los fallillos que le veo (pero eso es porque yo soy muy tocapelotas y todo lo quiero mejorar xD). Fallo lo que se dice fallo solo he notado uno, y es una gilipollez como un templo. En el launcher del juego, cuando seleccionas la calidad gráfica, si la cambias y eliges otra pestaña, al volver, la opción ha vuelto a su valor anterior en lugar del que elegiste.

Un saludo y de verdad, mucha suerte. Prometo sacar tiempo entre los examenes y organizar el Salón del Manga para seguir pasando miedo.
#105
Programación de audio / Re: Problema con alut.dll
06 de Septiembre de 2010, 09:52:51 PM
Pues no, no he conseguido arreglarlo. Como ahora estoy con los exámenes de septiembre no he podido dedicarle más tiempo, pero la verdad es que no se por donde meterle mano al asunto.

Como dije en el mensaje original tengo el .dll copiado en /system32, así que no debería dar problema, pero aun así me dice que Nanai cuando intento ejecutar algo que tenga alguna linea de alut. Compilando no da problemas, evidentemente, así que si tienes alguna idea de lo que podría ser te estaría eternamente agradecido.





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.