Сюда закидывайте всё подряд: скриншоты, карты/моды/модели/текстуры, над которыми начали работать, но так никогда и не закончили, да и вообще всё, что не связано с Сэмом, но сделано лично вами. Вещи, которые не хочется выкладывать в своей теме, если она есть, или ради которых не хочется создавать тему, если её нет. Никаких ограничений по нубовости и по крутости - просто показывайте то, что хотели бы показать. :3 Итак, начну. Моя древняя карта к Sidescroller-моду (работает и в моде Time Action). Большую часть ресурсов я потерял, поэтому заменил какими попало, так что на сообщения Инертана внимания не обращать. Да и вообще, выглядит она в целом ужасно: Скачать А вот уровень из "старой версии" МС2. Раз уж Артур уже грешил выкладыванием уровней из "старой версии" НРТ2ч2, то я последую его примеру. =Р Про глюки и лаги можете не рассказывать - сам всё прекрасно знаю. =Р Скачать А в качестве подтверждения того, что в этой теме можно выкладывать совершенно любые свои работы, я покажу свою бакалаврскую работу: Да, из-за этого у меня совсем-совсем не было времени на маппинг. Теперь время отбирает магистерская. Прога позволяет в реальном времени строить принципиальные схемы устройств, на ходу рассчитывает их параметры и генерирует анимацию на проводах. Возможно, кто-то видел Java-апплет, который делает то же самое, но в рамках магистерской работы я заставлю эту прогу работать в тридэ и ащди!.. кхм.. то есть, буду использовать трёхмерную визуализацию. Ну, кто-нибудь покажет что-то интересное?
Where did all the dragons go? We searched in the hills and we searched down the canyons, we even scanned the depths of the caves with our armour, swords and lanterns. Oh, if only had we seen him lurch, from his glorious skull covered perch.
CRACK went his claws and SMACK swipped the tail, a ROAR of might, one big BITE.
надеюсь, тебя, SLAwww, как любителя драконов, не оскорбит такая примитивная и кривая рисовка
Уиии дракон! : D Лови плюс!
Where did all the dragons go? We searched in the hills and we searched down the canyons, we even scanned the depths of the caves with our armour, swords and lanterns. Oh, if only had we seen him lurch, from his glorious skull covered perch.
CRACK went his claws and SMACK swipped the tail, a ROAR of might, one big BITE.
В общем .. я тоже пожалуй выложу свою карту начатую в 15.04.11 и пока что оставленную
название я не придумывал "супер мега крутое" а просто - Битва в яме ... Что же о карте ; карта просто убивалка времени, можно на нее уделить ~10 минут, можно и больше если увеличить сложность и количество жизней у мобов ... что нового на карте это; 1)peace музыка взятая из л4д 2)текстуры взятые из игры "Rune"
3)предусмотрено место для поддержки сверху(снайпера)
4)после смерти у вас будет меняться арсенал оружия что придает карте 0.5% интереса ... 5)карта декором не блещет, есть два силуэта и наверху два автомата с мордой клира(курта или кенни) 6)в архиве есть не использованная музыка и текстуры (мапперу решившему доделать карту будет бонус)
ссылка на карту =>здесь<= итог : если кто-то хочет чтоб я за нее взялся и доделал то прошу писать в ЛС с вариантами ..
XR-900 Geopelia - модификация самолёта X-49 Night Reaven, модель 2042 года. Основное оружие - лазерная пушка. Развивает скорость до 4092 км/ч и обладает высокой манёвренностью. Одноместный. Управление осуществляется при помощи сложной системы чувствительных сенсоров, прикрепляющихся к телу пилота.
В 2042 году во время военных действий был выпущен первый десяток (по другим данным - 12) самолётов XR-900. Быстрые, манёвренные и хорошо вооружённые машины без сомнений должны били обеспечить победу в войне, и так уже подходящей к концу. Но в один момент что-то пошло не так... Самолёты один за другим начали пропадать с радаров, их местоположение было неизвестно. Вскоре они все снова попали в поле зрения, но в эскадрилье творилась неразбериха: один из пилотов начал уничтожать своих союзников, но затем сам пропал с экранов радаров.
Вечером того же дня воюющие стороны заключили мир. В одном из аэропортов синхронно приземлились два самолёта: XR-900 Geopelia и самолёт бывших врагов XF-36A Game. Самолёты так же синхронно заехали в ангар, после чего было произведено вскрытие кабин. В обоих самолётах пилотов не оказалось. Бортовые самописцы не зафиксировали включения автопилота, катапультирования также совершено не было. Дальнейшие подробности засекречены...
Сообщение отредактировалДен - Воскресенье, 20.05.2012, 20:18
Как-то раз решили мы с art-serious сделать некое подобие пошаговой тактической стратегии. Конечно же, учитывая наши навыки, о шедевре можно и не мечтать, но что вышло, то вышло. На скриншоте изображен редактор. Основные действия забиты на клавиши и кнопки мыши, для ленивых предусмотрена поддержка скриптов(а также это единственный способ загрузить в "игру" декоративный объект или свой юнит). Графическая часть - art-serious, позже NR, недокод - я. "Игруля" умеет сохранять/загружать карты) Вся графическая часть пишется на C++(Qt), сам игровой процесс тоже. А вот цели для миссий и прочие игровые события пишутся с помощью скриптов. Пожелайте мне удачи в создании этой фигни
ZIM, это пушка из TibWars? Там модели из TibWars? Скинешь карту, пожалуйста?
CREATER, пока смотрел твой скриншот с телефона, нашел штук 10 фейлов в коде. Готовь зонт. Приеду домой, зайду с компьютера - закидаю. >D А ZIM хитрый, код не показал, так что никаких претензий, молодец. )
Where did all the dragons go? We searched in the hills and we searched down the canyons, we even scanned the depths of the caves with our armour, swords and lanterns. Oh, if only had we seen him lurch, from his glorious skull covered perch.
CRACK went his claws and SMACK swipped the tail, a ROAR of might, one big BITE.
QScriptValue Editor::newGameObject - такие методы из одной строки желательно помечать встраиваемыми (спецификатор inline), тогда компилятор по возможности будет вставлять само тело метода вместо его вызова, уменьшая число операций со стеком.
QScriptValue Editor::newGameObject - а что это за тип такой "QScriptValue"? Это класс, объект которого создаётся динамически? Если да, то лучше возвращать ссылку вот так: QScriptValue& Editor::newGameObject, иначе при вызове метода будет каждый раз создаваться копия объекта класса QScriptValue.
QScriptValue Editor::newGameObject - почему название метода с маленькой буквы? Так делать нежелательно, потому что ты запутаешься. Названия методов и функций всегда делай с большой, названия переменных - с маленькой, причём, начало названия переменной должно обозначать её тип, например: int iSomeValue; float fSomeOtherValue; CMyClass mcSomeObject;. Ещё желательно выделять отдельной буквой переменные, объявленные в интерфейсе класса. Например, у Кротим в сэмовском СДК они выделены префиксом m_: m_fSomeFloatValue, m_iSomeIndex. В принципе, всё правильно сделали, чего и тебе желаю. И да, я знаю, что во всяких библиотеках стандартных компонентов на это забивают. Их проблемы, а порядок быть должен.
QScriptContext *context - нигде не использованный аргумент. Или это для того, чтобы метод можно было использовать в качестве какого-нибудь стандартного обработчика события? Если так, то аргумент может вообще никак не называться, просто QScriptContext *.
engine->newQObject(new GameObject(), QScriptEngine::ScriptOwnership) - не соблюдён принцип Тараса Бульбы. Запомни: объект, создавший динамическую сущность, должен сам её уничтожить! А тут у тебя она создаётся, и где будет удаляться - неизвестно. Рано или поздно наберёшься утечек памяти из-за new без delete. SetTexture(QString str, int i) - такие аргументы лучше передавать по ссылке (то есть, QString &str), иначе каждый раз при вызове метода вызывается конструктор копии QString, который выполняет повторное динамическое выделение памяти, понижается производительность.
for(int i=0; i<32; i++) - у тебя аргумент метода тоже int i, и как потом понять, к какому из двух i следует обращаться в цикле? Я понимаю, что перегрузка работает, но лучше назвать их как-нибудь по-другому.
for(int i=0; i<32; i++) - а что такое 32? У тебя во всех версиях программы это 32 будет ровно 32, или, может быть, когда-нибудь ты вздумаешь сделать 64, и будешь искать по всему коду места, где у тебя 32? Вот что, #define MAX_ITEMS 32, и ставь везде MAX_ITEMS вместо 32.
А зачем вообще итерировать по всем членам wld.typePics и textures, если мы меняем только i-й?
Напомни мне, Qt в винде использует DirectX, OpenGL, или это - такая же надстройка для GDI, как VCL? Если последнее, то плакали твои ФПС. Надеюсь, что либо мои пессимистичные догадки не сбудутся, либо ты таки используешь человеческий API для отрисовки.
Where did all the dragons go? We searched in the hills and we searched down the canyons, we even scanned the depths of the caves with our armour, swords and lanterns. Oh, if only had we seen him lurch, from his glorious skull covered perch.
CRACK went his claws and SMACK swipped the tail, a ROAR of might, one big BITE.
Напомню, что это передается в QtScript, который имеет механизм сборки мусора.
Quote (SLAwww)
QScriptContext *context - нигде не использованный аргумент.
И опять же - это метод для работы с QtScript и такие методы просто обязаны использовать определенные аргументы. Даже если их не используют. В основном делаю по докам.
Quote (SLAwww)
Напомни мне, Qt в винде использует DirectX, OpenGL, или это - такая же надстройка для GDI, как VCL? Если последнее, то плакали твои ФПС. Надеюсь, что либо мои пессимистичные догадки не сбудутся, либо ты таки используешь человеческий API для отрисовки.
Я в данным момент сижу не из-под винды. Насчет API - не беспокойся, OpenGL.
Quote (SLAwww)
SetTexture(QString str, int i) - такие аргументы лучше передавать по ссылке (то есть, QString &str), иначе каждый раз при вызове метода вызывается конструктор копии QString, который выполняет повторное динамическое выделение памяти, понижается производительность.
Приму к сведению
Quote (SLAwww)
for(int i=0; i<32; i++) - у тебя аргумент метода тоже int i, и как потом понять, к какому из двух i следует обращаться в цикле? Я понимаю, что перегрузка работает, но лучше назвать их как-нибудь по-другому. for(int i=0; i<32; i++) - а что такое 32? У тебя во всех версиях программы это 32 будет ровно 32, или, может быть, когда-нибудь ты вздумаешь сделать 64, и будешь искать по всему коду места, где у тебя 32? Вот что, #define MAX_ITEMS 32, и ставь везде MAX_ITEMS вместо 32. А зачем вообще итерировать по всем членам wld.typePics и textures, если мы меняем только i-й?
Насчет этой фигни даже вякать не буду. Лох тот ещё
Спасибо большое за то,что разжевал всю эту фигню. В общем, на стыке QtScript и C++ получается некоторый бредок, но таков был мой выбор.
В "твоём стиле" главное, чтобы у тебя названия методов и переменных были "говорящими", т.е., содержащими в себе информацию о том, что они обозначают, и какой это тип данных. Сборка мусора в С++ - это хорошо только тогда, когда абсолютно точно знаешь, как она работает. В С++ нету родной сборки мусора (в отличие от Питона, например), а в тех реализациях, которые я видел, вместо стандартного оператора new использовалось что-то своё (чтобы потом считать обращения и отличать мусор от не-мусора), так что всё же соблюдай принцип Тараса Бульбы. А OpenGL - это хорошо, да. В отместку за свой оффтоп скоро буду заливать сюда интересности. Серьёзно, совсем скоро! =Р
Where did all the dragons go? We searched in the hills and we searched down the canyons, we even scanned the depths of the caves with our armour, swords and lanterns. Oh, if only had we seen him lurch, from his glorious skull covered perch.
CRACK went his claws and SMACK swipped the tail, a ROAR of might, one big BITE.
SLAwww, ты меня не совсем правильно понял в случае с ссылкой. В контексте C++ использовать ссылки можно, а вот в контексте QtScript их нет. В общем, не знаю, как объяснить. Спасибо за дельные мысли
Итак, это уже где-то здесь мелькало, но на случай, если кто-то не заметил, как оно мелькало, выложу ещё раз. Мои карты к Counter Strike 1.6 =P Я люблю маленькие тесные карты. Такие, как fy_pool_day, поэтому всегда делал карты для режима fight yard (если это можно назвать режимом). Длительное время оттачивал и переделывал каждую, чтобы во все было интересно играть 1х1 и 2х2, т.к. играл в основном с друзьями. Мне говорят, что когда на мою карту заходит более пяти игроков, то КС превращается в Квейк. ) В любом случае, если у кого-то есть желание сыграть, пишите мне, я создам сервер с доступом через интернет. А просто скачать карты можно отсюда: http://www.rapidshare.ru/2832548
Where did all the dragons go? We searched in the hills and we searched down the canyons, we even scanned the depths of the caves with our armour, swords and lanterns. Oh, if only had we seen him lurch, from his glorious skull covered perch.
CRACK went his claws and SMACK swipped the tail, a ROAR of might, one big BITE.
Скрин мода, пока еще не названного и не доконченного
Ситуация там такая: Дабы одержать победу в войне, зорги годовяться штурмовать гнездо Алудранских рептилоидов. Для того, чтобы их не обнаружили рептилии, один из окопов они закрыли и забаррикадировали. Трое зоргов слева (В центре Аркхара) изучают план гнезда, чтобы выявить слабое место. Когда оно будет найдено, Аркхара доложит об этом командующему штурмом (Самый правый, Обьект 24 - это его имя, насоящее засекречено) После чего Аркхара возьмет побольше взрывчатки и взорвет стену в слабом месте гнезда. Начнется штурм, и в это время Аркхара добудет из гнезда 3 энергоблока, датащит их до тесла-пушки, нажмет красную кнопку и она уничтожит все гнезда алудранов на планете (зорги-штурмовики успеют спастись)
Добавлено (31.05.2012, 13:02) --------------------------------------------- А бедная архитектура - так это потому что акцент делается на боевую динамику
Да, но этот уровень у меня не получался с самого начала, я решил сделать пару проработанных мест а потом махнуть на это, и реально красиво сделать в 2 уровне
CREATER, я на 16 коммент потратил 20 мин времени чтобы понять "что я читаю?" Вот я сделал эту текстуру на "РЕАЛ терминатор мод" есть и тга версия но как вставить это в игру (не НД)?
Сообщение отредактировалSerious-Sasha - Четверг, 31.05.2012, 14:23