FPS(Savior)+Manual
|
|
serg-kkz | Дата: Среда, 05.10.2011, 22:47 | Сообщение # 1 |
Генерал-полковник
Группа: Модераторы
Сообщений: 803
Награды: 3
Репутация: 18
Статус: Offline
| Вот сюжет для игры: Savior, предлагаю делать на основе её. Я автору обещал перевести её в 3D. Думаю сгодится для создания учебника.
Описание: _http://gcup.ru/forum/28-14258-1 _ - не выделять
Сделал чтоб работало, код нужно еще дорабатывать и дорабатывать. Скорректирую после ваших замечаний. Если есть желание присоединяйтесь.
Участники проекта.
Для титров. Инструкции для 3D моделльеров.
1. Наименование текстур для модели пример: -имя текстуры diffuse: name.png -имя текстуры normal: name_normal.png
В редакторе назначать только diffuse. Дополнительные карты просто класть рядом.
Решил выложить наработки, а то подумаете, забросил.
Что реализовано.
Редактор уровней.
1. Возможность загружать и сохранять уровни. 2. Перемещать по координатам XYZ объекты.
Редактор материалов.
1. Загружать объекты. 2. Менять параметры, но без применения к объекту
Игра (приложение)
1. Меню 2. Проигрывание заставок. 3. Загрузчик ресурсов.
Нужно скачать и установить библиотеку для работы с XML. Elementtree от сюда - http://effbot.org/media/downloads/elementtree-1.2.6-20050316.win32.exe
А так же графическую библиотеку. wxPython - http://downloads.sourceforge.net/wxpytho....y26.exe
Это для винды.
Так же перед запуском нужно указать папку с Savior_b_0.4.1 запустив конфигуратор.
ООП -
Сообщение отредактировал serg-kkz - Среда, 21.03.2012, 21:02 |
|
| |
serg-kkz | Дата: Понедельник, 22.10.2012, 04:55 | Сообщение # 91 |
Генерал-полковник
Группа: Модераторы
Сообщений: 803
Награды: 3
Репутация: 18
Статус: Offline
| Ну мне сейчас не до проекта. Поменял место работы, Алтай - на Москву сменил. Вот устраиваюсь. Недавно появился ноут и интернет. И теперь конечно же найдется время продолжить начатое.
ООП -
|
|
| |
ninth | Дата: Понедельник, 22.10.2012, 08:09 | Сообщение # 92 |
Admin
Группа: Администраторы
Сообщений: 1582
Награды: 5
Репутация: 46
Статус: Offline
| Ну-с, можно поздравить )
|
|
| |
Rawieo | Дата: Суббота, 01.12.2012, 13:18 | Сообщение # 93 |
Сержант
Группа: Пользователи
Сообщений: 24
Награды: 0
Репутация: 0
Статус: Offline
| А можно мне присоединиться? Уж очень хочется помочь чем-нибудь.
|
|
| |
serg-kkz | Дата: Воскресенье, 02.12.2012, 02:04 | Сообщение # 94 |
Генерал-полковник
Группа: Модераторы
Сообщений: 803
Награды: 3
Репутация: 18
Статус: Offline
| Quote (Rawieo) Уж очень хочется помочь чем-нибудь. чем, конкретно?
ООП -
|
|
| |
Rawieo | Дата: Воскресенье, 02.12.2012, 18:45 | Сообщение # 95 |
Сержант
Группа: Пользователи
Сообщений: 24
Награды: 0
Репутация: 0
Статус: Offline
| serg-kkz, я бы мог помочь с кодингом, по подкидывать идей. много чем. я - бывший неудавшийся модмейкер, но, хотя на моем счету нет ни одного мода, талантливый игродел - все упиралось в кодинг и ограничения движка (я тогда под goldsrc тобиш half-life и source тобиш half-life 2 модил). я хороший маппер. я четко осознаю как должно выглядет то, что я хочу сделать (если знаю игру, для которой это делаю), а поскольку в создании проекта участвуют 2 хороших прогера (если не так поправьте) меня ничто не будет ограничивать в создании. еще у меня есть один знакомый модельер - он делал неплохие модельки оружия для cry of fear. Вобще давайте как-нибуд соберемся в скайпе или где-нибудь еще и обсудим все. А сейчас я бы хотел что бы мне рассказали об игре).
|
|
| |
serg-kkz | Дата: Понедельник, 03.12.2012, 02:01 | Сообщение # 96 |
Генерал-полковник
Группа: Модераторы
Сообщений: 803
Награды: 3
Репутация: 18
Статус: Offline
| Вот такая идея. Для того чтоб было проще строить карты, напиши класс полигона с натянутой текстурой.
ООП -
|
|
| |
Rawieo | Дата: Понедельник, 03.12.2012, 11:03 | Сообщение # 97 |
Сержант
Группа: Пользователи
Сообщений: 24
Награды: 0
Репутация: 0
Статус: Offline
| да. полигоны это хорошо, но лучше будет если сделать из полигонов браши (кубы), а потом написать прогу (назовем компилятор карт, хотя он не компилятор на самом деле), которая будт удалять ненужные нерисуемые в игре полигоны (этакая пародия на Valve Hammer Editor). Еще будет полезно сделать light-box - это фишка из двигов HPL от Frictional games - это некоторое пространство, в котором все объекты будут одинаково освещены. Лучше будет, если свет в мире будет делиться на статический и динамический тени - тени от статического просчитываются компилятором, а от динамического в игре. Еще будет здорово создать trigger-brash или trigger-polygon - это пространство или плоскость, косаясь которого игрок будет активировать что-нибудь.Добавлено (03.12.2012, 10:35) --------------------------------------------- Мне бы исходные коды ваших творений. архив вверху битый. Добавлено (03.12.2012, 10:58) --------------------------------------------- Не знаю, все ли я правильно сделал. Как-то так: Code from panda3d.core import Triangulator,GeomVertexFormat,GeomVertexData,Geom,GeomVertexWriter,GeomTriangles,GeomNode
class polygon(object): def __init__(self,texture,vertices=[]): self.vertices=list(tuple(v) for v in vertices) def addVertex(self,x,y): self.vertices.append((x,y)) def makeNode(self,pointmap=(lambda x,y: (x,y,0))): vt=tuple(self.vertices) t=Triangulator() fmt=GeomVertexFormat.getV3() vdata=GeomVertexData('name', fmt, Geom.UHStatic) vertex=GeomVertexWriter(vdata, 'vertex') for x,y in vt: t.addPolygonVertex(t.addVertex(x,y)) vertex.addData3f(pointmap(x,y)) t.triangulate() prim=GeomTriangles(Geom.UHStatic) for n in xrange(t.getNumTriangles()): prim.addVertices(t.getTriangleV0(n),t.getTriangleV1(n),t.getTriangleV2(n)) prim.closePrimitive() geom=Geom(vdata) geom.addPrimitive(prim) node=GeomNode('gnode') node.addGeom(geom) return node Создается 2мя строками: Code poly=Polygon([(0,0),(0,1),(1,1),(1,0)]) nodePath = render.attachNewNode(poly.makeNode()) Добавлено (03.12.2012, 11:03) --------------------------------------------- D:\Rawieo\dev\python\minelife>D:\Panda3D-1.8.0\python\python.exe -E main.py DirectStart: Starting the game. Known pipe types: wglGraphicsPipe (all display modules loaded.) Assertion failed: num_points >= 2 at line 356 of c:\buildslave\release_sdk_win32 \build\panda3d\panda\src\mathutil\triangulator.cxx Assertion failed: choose_idx < (int)permute.size() at line 397 of c:\buildslave\ release_sdk_win32\build\panda3d\panda\src\mathutil\triangulator.cxx Assertion failed: choose_idx < (int)permute.size() at line 397 of c:\buildslave\ release_sdk_win32\build\panda3d\panda\src\mathutil\triangulator.cxx Для продолжения нажмите любую клавишу . . .
|
|
| |
Rawieo | Дата: Понедельник, 03.12.2012, 13:36 | Сообщение # 98 |
Сержант
Группа: Пользователи
Сообщений: 24
Награды: 0
Репутация: 0
Статус: Offline
| Вобщем мне что-то удалось, только это не с помощью этого класса был сделано, а с помощью экземпляра класса CardMaker, но д умаю он тоже сойдет, ибо кубы кубами, а сложные фигуры из брашей не сотворишь - вместо них модельки.
|
|
| |
serg-kkz | Дата: Понедельник, 03.12.2012, 19:03 | Сообщение # 99 |
Генерал-полковник
Группа: Модераторы
Сообщений: 803
Награды: 3
Репутация: 18
Статус: Offline
| Вообщем так, попробуй написать генератор туннелей и лабиринтов на основе твоего класса. Думаю пока временно использовать генерируемые карты в проекте. Это как раз по твоему направлению. Архив перезалью как приобрету usb контейнер для ноута, чтоб подключить хард где у меня все храниться. Код выкладывай здесь, или создай тему в соответствующем разделе.
ООП -
|
|
| |
Rawieo | Дата: Понедельник, 03.12.2012, 20:54 | Сообщение # 100 |
Сержант
Группа: Пользователи
Сообщений: 24
Награды: 0
Репутация: 0
Статус: Offline
| При создании экземпляра класса интерпертатору не нравится t.triangulate() - мой класс нужно доработать более опытному программисту. Дайте мне ваши исходники и поясните все - может у вас заработает.
|
|
| |
serg-kkz | Дата: Понедельник, 03.12.2012, 23:15 | Сообщение # 101 |
Генерал-полковник
Группа: Модераторы
Сообщений: 803
Награды: 3
Репутация: 18
Статус: Offline
|
А как ты получил это?
ООП -
Сообщение отредактировал serg-kkz - Понедельник, 03.12.2012, 23:16 |
|
| |
Rawieo | Дата: Вторник, 04.12.2012, 22:39 | Сообщение # 102 |
Сержант
Группа: Пользователи
Сообщений: 24
Награды: 0
Репутация: 0
Статус: Offline
| с помощью экземпляра класса CardMaker - мне кажется для создания плоских прямоугольных полигонов лучше использовать его или класс, наследующий его свойства. Добавлено (04.12.2012, 22:39) --------------------------------------------- Да кстати - мне не кажется что генератор рандомных лабиринтов - хорошая идея.
|
|
| |
ninth | Дата: Пятница, 18.01.2013, 21:39 | Сообщение # 103 |
Admin
Группа: Администраторы
Сообщений: 1582
Награды: 5
Репутация: 46
Статус: Offline
| К слову, о лабиринтах, как освобожусь, может выкину сюда генератор (ога, люблю я генераторы), который генерирует примерно такие комнаты с коридорами
|
|
| |