newspeoplefor developersdocumentationdownloads

demo.cc

Go to the documentation of this file.
00001 //----------------------------------------------------------------------------
00002 //  demo.cc
00003 //
00004 //  (C)2005 Kim, Hyoun Woo
00005 //----------------------------------------------------------------------------
00006 #include "kernel/nkernelserver.h"
00007 #ifdef __WIN32__
00008 #include "kernel/nwin32loghandler.h"
00009 #include "tools/nwinmaincmdlineargs.h"
00010 #else
00011 #include "tools/ncmdlineargs.h"
00012 #endif
00013 #include "gfx2/ndisplaymode2.h"
00014 #include "nopenaldemo/nappopenaldemo.h"
00015 
00016 nNebulaUsePackage(nnebula);
00017 nNebulaUsePackage(ndirect3d9);
00018 nNebulaUsePackage(ndsaudioserver3);
00019 nNebulaUsePackage(ndinput8);
00020 nNebulaUsePackage(ndshow);
00021 nNebulaUsePackage(ngui);
00022 nNebulaUsePackage(nnetwork);
00023 nNebulaUsePackage(napplication);
00024 nNebulaUsePackage(nopenaldemo);
00025 nNebulaUsePackage(nopenal);
00026 
00027 //----------------------------------------------------------------------------
00030 #ifdef __WIN32__
00031 int WINAPI
00032 WinMain(HINSTANCE hInstance, HINSTANCE prevInstance, LPSTR lpCmdLine, int nCmdShow)
00033 {
00034     nWinMainCmdLineArgs args(lpCmdLine);
00035 #else
00036 int
00037 main(int argc, const char** argv)
00038 {
00039     nCmdLineArgs args(argc, argv);
00040 #endif
00041     // Uncomment and add your own project directory if it is necessary.
00042     //const char* projDir   = args.GetStringArg("-projdir", 0);
00043 
00044     // Kernel Server preparation:
00045     nKernelServer kernelServer;
00046 #ifdef __WIN32__
00047     nWin32LogHandler logHandler("nappopenaldemo");
00048     kernelServer.SetLogHandler(&logHandler);
00049 #endif
00050 
00051     
00052     kernelServer.AddPackage(nnebula);
00053     kernelServer.AddPackage(ndirect3d9);
00054     kernelServer.AddPackage(ndinput8);
00055     kernelServer.AddPackage(ndsaudioserver3);
00056     kernelServer.AddPackage(ndshow);
00057     kernelServer.AddPackage(ngui);
00058     kernelServer.AddPackage(napplication);    
00059     kernelServer.AddPackage(nopenaldemo);
00060     kernelServer.AddPackage(nopenal);
00061 
00062     // create the application.
00063     nAppOpenALDemo *app = (nAppOpenALDemo*)kernelServer.New("nappopenaldemo", "nappopenaldemo");
00064 
00065     // application settings.
00066     const char* appName = "appname";
00067     const char* companyName = "Kim, Hyoun Woo";
00068 
00069     const char* title = "Nebula2 OpenAL Demo";
00070     nDisplayMode2::Type type = nDisplayMode2::Windowed;
00071     int w = 640;
00072     int h = 480;
00073     bool vsync = false;
00074     nDisplayMode2::Bpp bpp = nDisplayMode2::Bpp32;
00075 
00076     nDisplayMode2 disp;
00077     disp.Set(title, type, 0, 0, w, h, vsync);
00078     disp.SetBpp(bpp);
00079 
00080     app->SetAppName(appName);
00081     app->SetCompanyName(companyName);
00082     app->SetDisplayMode(disp);
00083 
00084     // Uncomment and add your own project directory if it is necessary.
00085     //app->SetProjectDirectory(projDir);
00086     // Uncomment and add your own startup script if it is necessary.
00087     //app->SetStartupScript("home:<your own startup script>");
00088     if (app->Open())
00089     {
00090         app->Run();
00091     }
00092 
00093     app->Close();
00094     app->Release();
00095 
00096     return 0;
00097 }
00098 

Copyright © 1999-2005 by the contributing authors. Ideas, requests, problems: Send feedback.