Ахахах,так да)) Просто я раньше делал игру на php (браузерные онлайн,текстовые) вот решил попробовать сделать свою первую игр,сразу в голов пришла такая мысль,вот решил реализовать) Вышло что вышло,первая как ни как хД
Ну Green Cube тоже первая моя игра ,Мда такое чувство что у всех первая игра куб Single of game tycoon = 10%
Не в сюжете дело. Как бы так помягче выразиться... Твоя игра представляет из себя набор хаотично разбросанных кубиков, по которым прыгает плохо нарисованный квадрат. При этом ты делаешь всякие сиквелы, приквелы и коллекционные версии, хотя игра, как уже говорилось выше, пока даже не завершена.
facepalm yarickyarick, скажем так, намекает на то, что на GM пишут игры в основном нубы и школота, но это не значит, что на этом движке нельзя написать нормальную игру.
в 1 GM это конструктор в 2 .Первая часть была Для опытов ,Вторую я буду делать долго Single of game tycoon = 10%
GameLoper, объясни мне почему, каждый... каждый школьник выставляет игру в которой реализовано лишь движение, нет сюжета или он дерьмовый, планирует сделать МНОГОМИЛИОННЫЙ СИКВЕЛ, на свою супер игру, которая сделана на сраном рваном game maker-е и никому не нужна?
Без обид, но это даже не игра по моему) Первая версия игры Pong в которой было только два цвета (черный и белый) и то выглядит лучше. Мало того там еще и геймплей интересней был... ИМХО Я конечно тоже, может быть, не красавчик в геймдеве, но это уже болезнь какая-то - кубики-кубики, платформеры-платформеры...
У тебя первая еще логически не завершена, а ты кидаешься на сиквелы...
в 1 не было сюжета ,а вот в 2 попытаюсь его сделать
Добавлено (27.04.2013, 16:10) --------------------------------------------- Выложил Текстур Пак
Добавлено (11.05.2013, 08:53) --------------------------------------------- Добавил сылку на Green Cube II,из за то что я выложил дему в 3 уровни нельзя перейти на следующей уровень
ммм страно в Миллер Т. DirectX 9 с управляемым кодом. Программирование игр и графика. 2005. точно такой же код. я говорю про то что там тоже форму называют также frm. Странно очень странно Single of game tycoon = 10%
Я понимаю что поздно,ну лучшее поздно чем никогда Глава 1 Создание Мира
Откройте Examples/Tutorials/Tutorial1/tutorial1_win.dsp через Microsoft Visual C (MSVC), Потом Нажмите 'Build' Меню и выберите 'Set Active Configuration',а в "Set Active Configuaration "Выберите Select the "Win32 D3D8 Debug" Конфигурацию ..Соберите проект. Все Теперь вы готовы ...
Компилируем проект ,если нет ошибок читаем дальше Всё мы сделали загрузку DFF файлов. Теперь ищем функцию AttachInputDevices() в win/events.c файле, Посмотрите на эту функцию сейчас
Теперь компилируем,запускаем,и нажимаем F1 должен появиться объект. Что бы Удалить Объект при закрытие программы,делаем следующие Ищем Terminate3D() в main.c, и перед ним добавляем
и в функцию Terminate3d добавьте линию вызова этой функция (destoryclumpCb)
Код
static void Terminate3D(void) { /* Close or destroy RenderWare components in the reverse order they */ /* were opened or created... */ RpWorldForAllClumps(World, _destroyClumpCB, NULL);
Direct = RpLightCreate(rpLIGHTDIRECTIONAL); if (Direct) { RwFrame *f = RwFrameCreate(); RpLightSetFrame(Direct, f); RpWorldAddLight(World, Direct); }
}
Функцию добавили ну её надо вызвать ... в Initialize3D() добавим вызов этой функции
Код
/* Create an empty world if not loading a RWS... */ World = CreateWorld(); if( World == NULL ) { RsErrorMessage(RWSTRING("Cannot create world.")); return FALSE; } /* Create the lights */ CreateLights(); /* Create a camera using the democom way... */ Camera = CreateCamera(World);
Потом добавим функцию для удаление света По аналоги с функции для удаление объектов добавляем функцию
Код
static void DestroyLights() { if (Direct) { RwFrame *f; RpWorldRemoveLight(World, Direct); f = RpLightGetFrame(Direct); RpLightSetFrame(Direct, NULL); RwFrameDestroy(f); RpLightDestroy(Direct); Direct = NULL; }
if (Ambient) { RpWorldRemoveLight(World, Ambient); RpLightDestroy(Ambient); Ambient = NULL; }
}
А дальше вызовите эту функцию в Terminate3D(), также как вызвали и RpWorldForAllClumps()
Дополнение 1 Туториала l
Так как это конец 1 главы ,значит и Tutorial1.dsp,мы будем разбирать файлы ,и начнём с main.c и с функцие CreateWorld(Void)
camera = CameraCreate(RsGlobal.maximumWidth, RsGlobal.maximumHeight, TRUE);//Создаём камеру if( camera ) { RwCameraSetNearClipPlane(camera, 0.1f);//Указываем качество рядом RwCameraSetFarClipPlane(camera, 30.0f);//Указываем качество далеко
RpWorldAddCamera(world, camera);//Добавляем камеру в мир
RsGlobal.appName = RWSTRING("RenderWare Graphics Tutorial One");//Название проекта
return TRUE; }
return FALSE; }
Код
static RwBool InitializeMenu(void) { static RwChar fpsLabel[] = RWSTRING("FPS_F");//Водим Название Пункта меню,в данном случае кол фпс
if( MenuOpen(TRUE, &ForegroundColor, &BackgroundColor) )//если меню открыто { MenuAddEntryBool(fpsLabel, &FPSOn, NULL);//Добавляем пункт меню,FPSOn это переменная типа bool
а вот список замен...кому нужен будет(взято с Оригинального туториала)
Код
rwID_CAMERA RwCamera chunk. See RwCameraStreamRead rwID_TEXTURE RwTexture chunk. See RwTextureStreamRead rwID_MATERIAL RpMaterial chunk. See RpMaterialStreamRead. rwID_WORLD RpWorld chunk. See RpWorldStreamRead. rwID_SPLINE RpSpline chunk. See RpSplineStreamRead rwID_MATRIX RwMatrix chunk. See RwMatrixStreamRead rwID_GEOMETRY RpGeometry chunk. See RpGeometryStreamRead. rwID_CLUMP RpClump chunk. See RpClumpStreamRead. rwID_LIGHT RpLight chunk. See RpLightStreamRead. rwID_ATOMIC RpAtomic chunk. See RpAtomicStreamRead rwID_TEXDICTIONARY RwTexDictionary - platform specific texture dictionary. See RwTexDictionaryStreamRead. rwID_IMAGE RwImage chunk. See RwImageStreamRead rwID_ANIMANIMATION RtAnimAnimation chunk. See RtAnimAnimationStreamRead. rwID_HANIMANIMATION RtAnimAnimation chunk. For backwards compatibility. See rwID_ANIMANIMATION. rwID_TEAM RpTeam chunk. See RpTeamStreamRead rwID_DMORPHANIMATION RpDMorphAnimation - delta morph animation chunk. See RpDMorphAnimationStreamRead rwID_TEAMDICTIONARY RpTeamDictionary chunk. See RpTeamDictionaryStreamRead rwID_PITEXDICTIONARY RwTexDictionary - platform independent texture dictionary. See RtPITexDictionaryStreamRead. rwID_TOC RtTOC chunk. See RtTOCStreamRead rwID_PRTSTDGLOBALDATA RpPrtStdEmitterClass, RpPrtStdParticleClass and RpPrtStdPropertyTable chunks. See RpPrtStdEClassStreamRead, RpPrtStdPClassStreamRead RpPrtStdPropTabStreamRead and RpPrtStdGlobalDataStreamRead rwID_PATCHMESH RpPatchMesh chunk. See RpPatchMeshStreamRead rwID_UVANIMDICT UV anim dictionary chunk. See RpUVAnimGetDictSchema rwID_ENVIRONMENT RpEnvironment chunk is used internally to convey art package background < settings to the Visualizer.
Надеюсь урок поможет....
Извините если не в тот раздел ,просто не знал в какой раздел добавить .. Уроки будут добавляется.
Добавлено (27.04.2013, 10:04) --------------------------------------------- Добавил урок по Программированию загрузчика текстур....и других загрузчиков...