01.04.2011, 17:18
Hallo,
in diesem Tutorial zeige ich euch,wie ihr Bilder in C anzeigt.
Vorraussetzungen
Tutorial
Als erstes kommen die Header-Files:
in diesem Tutorial zeige ich euch,wie ihr Bilder in C anzeigt.
Vorraussetzungen
- PSPSDK
- Grundwissen in C
- Ein kluges Köpfchen
Tutorial
Als erstes kommen die Header-Files:
Code:
#include <pspdisplay.h>
#include <pspctrl.h>
#include <pspkernel.h>
#include <pspdebug.h>
#include <pspgu.h>
#include <png.h>
#include <stdio.h>
#include "graphics.h"
Danach definieren wir die Funktionen,um das eintippen leichter zumachen
Code:
#define printf pspDebugScreenPrintf
#define MAX(X, Y) ((X) > (Y) ? (X) : (Y))
Danach folgt die Module Informationen:
Code:
PSP_MODULE_INFO("Image Tutorial", 0, 1, 1);
Das ganze läuft nach folgendem Schema:
PSP_MODULE_INFO("MODULE_INFO",MODE,VERSION,VERSION
und danach folgen die Callbacks:
Code:
/* Exit callback */
int exit_callback(int arg1, int arg2, void *common) {
sceKernelExitGame();
return 0;
}
/* Callback thread */
int CallbackThread(SceSize args, void *argp) {
int cbid;
cbid = sceKernelCreateCallback("Exit Callback", exit_callback, NULL);
sceKernelRegisterExitCallback(cbid);
sceKernelSleepThreadCB();
return 0;
}
/* Sets up the callback thread and returns its thread id */
int SetupCallbacks(void) {
int thid = 0;
thid = sceKernelCreateThread("update_thread", CallbackThread, 0x11, 0xFA0, 0, 0);
if(thid >= 0) {
sceKernelStartThread(thid, 0, 0);
}
return thid;
}
Danach folgt der Main-Code:
Code:
int main() {
char buffer[200];
Image* ourImage;
pspDebugScreenInit();
SetupCallbacks();
initGraphics();
ourImage = loadImage("ourImage.png");
if(!ourImage) {
//laden des Bildes ist fehlgeschlagen
printf("laden des Bildes fehlgeschlagen!\n");
{ else {
int x = 0;
int y = 0;
sceDisplayWaitVblankStart();
while(x<480) {
while(y<272) {
blitAlphaImageToScreen(0 ,0 ,32 , 32, ourImage, x, y);
y += 32;
}
Der Rest sollte kein Problem sein.
Thanks to PSP-Programming.com
Werde noch viel viel mehr hinzufügen,also keine panik
mfg
emink123