⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 03 main.cpp

📁 Games programming all in one code chapter 20
💻 CPP
字号:
		/* '03 Main.cpp' */

		/* Mirus window framework header */
	#include "mirus.h"

		/* Custom derived class */
	class CustomWindow : public mrWindow
	{
	public:
		mrScreen            m_kScreen;

			/* Our particle system */
		mrParticleSystem    m_kParticleSystem;

			/* Constructor / Destructor */
		CustomWindow (void) {};
		~CustomWindow (void) {};

			/* Window manipulation functions */
		mrBool32 Frame (void);

	};

		/* Render frame */
	mrBool32 CustomWindow::Frame(void)
	{
			/* Start rendering */
		m_kScreen.Clear (0, 0, 0, 0);
		m_kScreen.StartFrame ();

			/* Simulate according to elapsed time */
		if (m_kScreen.GetFPS () != 0)
		{
			m_kParticleSystem.Simulate (1/(mrReal32)m_kScreen.GetFPS ());
		}

			/* Render particle system and end frame */
		m_kParticleSystem.Render ();
		m_kScreen.EndFrame ();

		return mrTrue;
	}

		/* "WinMain Vs. main" */
	int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInst, 
																					LPSTR lpCmdLine, int nShowCmd)
	{
			/* Our window */
		CustomWindow  kWindow;

			/* Create window */
		kWindow.Create (hInstance, "04 Mirus Example");
		kWindow.SetSize (640, 480);
 
		kWindow.m_kScreen.Init (kWindow.GetHandle ());
		kWindow.m_kScreen.SetMode (false, 640,480,32,true);

			/* We need a texture for our particle system */
		mrRGBAImage rkImage;
		rkImage.LoadFromBitmap ("gradientcircle.bmp");

		mrTexture kTexture;
		kTexture.Create (&rkImage);

			/* Our system parameters */
		mrParticleSystemParams kParameters;

		kParameters.m_fSize       = 20;
		kParameters.m_fLifetime   = 0.3f;
		kParameters.m_iColor      = D3DCOLOR_RGBA (255, 208, 51, 136);
		kParameters.m_iFinalColor = D3DCOLOR_RGBA (255, 0, 0, 0);
		kParameters.m_kPosition   = mrVector2D (310,230);
		kParameters.m_fFinalSize  = 30;
		kParameters.m_fSpeed      = -4;
		kParameters.m_fDispersion = 0.02f;

			/* Create the particle system */
		kWindow.m_kParticleSystem.Create (kParameters, 200, 75, &kTexture);
 
		kWindow.Run ();
		return 0;
	}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -