PSP 的软件开发用什么语言

PSP 的软件开发用什么语言,第1张

游戏一般都是 C++开发的

不过游戏 主机 开发一般都是需要相关套件

而且周期较长 一个人很难做得来

PSP程序开发例子解析(二)Images2008-07-03 20:46第二个例子程序演示了如何在屏幕上绘制图片 附上源码 变化不大 很简单的几句代码搞定了

1.头文件GameApp.h

#ifndef _GAMEAPP_H_

#define _GAMEAPP_H_

#include <JApp.h>

class JQuad//JQuad定义了图片上的显示范围 比如很多的小图片存为了一个大图片 在大图片上指定显示的坐标

class JSprite//动画 似乎没用到

class JTexture//把一个图片读成了一个JTexture = =!里面不晓得有什么内容 没有doc可看

class GameApp: public JApp

{

private:

JTexture* mBgTex//整个背景的图片

JTexture* mSpriteTex//2个人物的图片

JQuad* mBg//定义了整个背景的大小

JQuad* mBoy//男孩在人物图片上的大小

JQuad* mGirl//女孩在人物图片上的大小

public:

GameApp()

virtual ~GameApp()

virtual void Create()

virtual void Destroy()

virtual void Update()

virtual void Render()

virtual void Pause()

virtual void Resume()

}

#endif

2.源码文件GameApp.cpp

#include <stdio.h>

#include <JGE.h>

#include <JRenderer.h>

#include <JLBFont.h>

#include <JSprite.h>

#include <JFileSystem.h>

#include "GameApp.h"

GameApp::GameApp()

{

mBgTex = NULL

mBg = NULL

mSpriteTex = NULL

mBoy = NULL

mGirl = NULL//都给它设成NULL干啥 没有意义啊

GameApp::~GameApp()

{

}

//程序启动

void GameApp::Create()

{

JRenderer* renderer = JRenderer::GetInstance()

// Load background texture (texture format can be PNG, JPG or GIF)

mBgTex = renderer->LoadTexture("bg.jpg")//初始化加载背景图片 可以PNG JPG GIF的 开发的API封装的很好 都提供的了高层的API 没有暴露什么底层的东西= =! 看来之前我对图片处理的考虑有点多虑了 能运行上100M的3D游戏 应该不会太在乎内存消耗 不泄露就行

// Load texture for the characters (use TEX_TYPE_USE_VRAM to load texture into VRAM on PSP and this can speed up the rendering)

mSpriteTex = renderer->LoadTexture("planet.png", TEX_TYPE_USE_VRAM)//用这个参数来加速

//JQuad定义了一个范围 在没BgTex上 从左上角到右下角 看代码知道了PSP屏幕的尺寸为480*272

mBg = new JQuad(mBgTex, 0, 0, 480, 272) // Create background quad for rendering.

// Now let's create the image quads for the characters. The two characters are stored in one texture

// so we have to know the location and size of each one to make the quads.

mBoy = new JQuad(mSpriteTex, 0, 0, 67, 88)//同样对男孩的区域定义范围

mBoy->SetHotSpot(33.5f, 44.0f)// Set the pivot point to the middle.定义了这个图片的核心坐标 这里定义为中心 在旋转的时候围绕中心旋转 恩

mGirl = new JQuad(mSpriteTex, 68, 0, 68, 90)//女孩的图片从68开始越过了男孩的图片

mGirl->SetHotSpot(34.0f, 45.0f)//同样设置中心为HotSpot

}

void GameApp::Destroy()

{

SAFE_DELETE(mBgTex)//调用了一个宏 在JTypes.h里面:#define SAFE_DELETE(x)if (x) { delete xx = NULL} 另有文章说释放JTexture需要用什么engine.什么 应该效果是一样的mEngine->FreeMusic(mMusic)

SAFE_DELETE(mBg)

SAFE_DELETE(mSpriteTex)

SAFE_DELETE(mBoy)

SAFE_DELETE(mGirl)

}

//Update方法没有变化

void GameApp::Update()

{

JGE* engine = JGE::GetInstance()

if (engine->GetButtonClick(PSP_CTRL_TRIANGLE)) // Do a screen shot when the TRIANGLE button is pressed

{

char s[80]

sprintf(s, "ms0:/screenshot.png")

JRenderer::GetInstance()->ScreenShot(s)

}

if (engine->GetButtonClick(PSP_CTRL_CROSS))// Exit when the CROSS button is pressed

{

engine->End()

return

}

}

void GameApp::Render()

{

JRenderer* renderer = JRenderer::GetInstance()

renderer->RenderQuad(mBg, 0, 0)//具体画屏幕了 绘制整个背景 画mBg的范围JQuad

renderer->RenderQuad(mBoy, 33.5, 44, 0.0f, 1.0f, 1.0f) // Scale down the characters a little bit when rendering.

renderer->RenderQuad(mGirl, 320, 235, 0.0f, 0.7f, 0.7f)//参数分别为x点 y点 左上角开始计算 0.0f为旋转角度 没弄明白这个单位是什么 0.7f 和0.7f是x轴和y轴的缩放比例1是按照原大小0.7f是缩小了

Sleep(1)//自己加的 纯粹是为了减少CPU占用 否则一运行CPU就满了 似乎这个函数在PSP中不支持

}

void GameApp::Pause()

{

}

void GameApp::Resume()

名词: n.

Personal Software Process(PSP)与具体的技术(程序设计语言、工具或者设计方法)相对独立,其原则能够应用到几乎任何的软件工程任务之中。PSP能够:

(1) 说明个体软件过程的原则;

(2) 帮助软件工程师作出准确的计划;

(3) 确定软件工程师为改善产品质量要采取的步骤;

(4) 建立度量个体软件过程改善的基准;

(5) 确定过程的改变对软件工程师能力的影响。

个人软件过程着重于提升个人的能力。PSP可以让每一个人明白自己如何制订计划并跟踪自己的工作,提供工作有效性的数据并识别出自己的优势和劣势,从而使你能够不断了解和改善自己的技能和才智,并在工作中充分利用自己独特的才能。而TSP向你展示如何成为合格的项目组成员,如何创建高效且具有自我管理能力的工程小组,从而达到高效的协同开发。

PSP (Personal Software Process) 是一种可用于控制、管理和改进个人工作方式的自我持续改进过程,是一个包括软件开发表格、指南和规程的结构化框架。PSP与具体的技术(程序设计语言、工具或者设计方法)相对独立,其原则能够应用到几乎任何的软件工程任务之中。PSP能够说明个体软件过程的原则; 帮助软件工程师作出准确的计划;确定软件工程师为改善产品质量要采取的步骤;建立度量个体软件过程改善的基准;确定过程的改变对软件工程师能力的影响。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/11424996.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存