В Directx можно ли совать 3д модели, сделанные в том же 3д максе?
Тебе придется написать свой загрузчик 3D модели. По сути, любой 3D формат представляет из себя набор вершин, некоторые хранят данные об анимации. Найти документацию по какому-либо открытому формату достаточно просто. Да и готовые загрузчики тоже есть в сети. В DirectX уже реализована поддержка формата .X - его на первое время хватит.
Цитата
Как создавать текстуры, уровни и интерфейс пользователя, не думаю что с++ и директа или Опена хватит для создания игры, хотя об этом только и слышу.
Достаточно взять и поискать, что означает каждое, написанное тобою, слово. Текстура - грубо говоря обычная картинка. Уровень - это вообще слишком обширное понятие, т.к. может включать в себя модели, текстуры, позиции источников освещения и т.п. Формат уровня, как и редактор придется писать самому. Интерфейс в большинстве случаев представляет из себя несколько текстур. Хотя в наше время отдают предпочтение и 3D интерфейсу, который рендерится перед камерой.
Цитата
Где создается сам мир игры, как и где это все рисуется, что бы заранее знать с чем придется иметь дело?
Мир игры представляет из себя совокупность уровней. Об уровнях я написал выше. Каждый кадр тебе придется сформировать набор геометрии, который должна будет отрендерить видеокарта - это грубо говоря.
Цитата
По поводу библиотек, кучу нашел, но не знаю какие толковые, кому не сложно назовите пару нормальных библиотек с норм документацией.
Какие именно библиотеки тебя интересуют? DirectX хорошо документирован. В SDK даже примеры есть.
Цитата
Можно ли на с++ писать не только под виндовс игры? Нашел разные ответы, не понятно кому верить.
C++ - просто язык программирования. Все, что ты пишешь представляет из себя обычные текстовые файлы. А вот их преобразованием в машинный код занимается компилятор. Так что все зависит от того, есть ли компилятор под нужную тебе ОС. Универсальный код в большинстве случаев написать не получится( не используя ухищрения ), т.к. API каждой ОС отличается.
Цитата
И ещё вопрос, если создавать онлайн игру, то что ещё нужно к этому всему что я наговорил?
Тебе нужно будет реализовать работу с одним из сетевых протоколов. В большинстве случаев это UDP или TCP.
Цитата
Движки не предлагайте, их всех слышал, в планах другие вещи. Поиск на форуме юзал, не нашел конкретных ответов.
Судя по твоим вопросам, у тебя совсем нет представления о создании даже простых приложений. Если ты не представляешь, как именно все работает, то написать почти с нуля(что именно ты и собираешься) невозможно. А если у тебя нет и знаний математики(включая выш. мат.) то твои шансы равны нулю. Именно нулю, как бы разочаровывающе это не звучало.
Так что для начала бери какой-нибудь движок, например Irrlicht, и работай с ним. По этому движку я могу тебя проконсультировать. Почему именно он, а не какой-нибудь Unity3D ? Потому что он представляет из себя одну библиотеку, которую ты подключаешь в IDE и пишешь на C++. Другие, более мощные движки, например Unity3D, CryEngine, Unreal Engine, представляют из себя целый набор инструментов. Научиться на них программировать гораздо труднее. Лучше начинать с чего-нибудь более приземленного.
Цитата
Чем отличается Directx и OpenGL, что лучше? В одной статье обосрали Опен в другой Директ, сиди и думай что юзать. Говорят что ОПен плохо стал поддерживатся но он мол кроссплатформенный.
DirectX - целый ряд библиотек, предоставляющих работу со звуком, графикой, сетью и устройствами ввода. Однако, DirectX функционирует лишь на Windows(ну и в какой-то мере на консолях. Там есть свои обертки. Например Sony DirectX) OpenGL (Open Graphics Library) - представляет из себя набор кроссплатформенных библиотек, предоставляющих работу исключительно с графикой.
Сообщение отредактировал Storm54 - Вторник, 06 Мая 2014, 12:21
Я лишь выразил свою точку зрения. Не думаю, что у кого-то возникнет желание всю жизнь просидеть на конструкторах. Все-равно рано или поздно приходят к полноценному программированию. Так почему же нельзя сразу так сделать?
Сообщение отредактировал Storm54 - Суббота, 03 Мая 2014, 23:55
Конкретно по комплектующим сказать трудно. Все зависит от требовательности приложения. Если сервер не будет сильно съедать системные ресурсы, то VDS хватит. Выделенный сервер ставить дома выгоднее только в плане того, что платить за него придется один раз(собственно покупка комплектующих) иначе лучше арендовать в дата-центре. Что-то мне подсказывает, что у тебя серверное приложение будет довольно простое и даже самых скромных ресурсов ему хватит.
ЦитатаAdom ()
И значит что платишь 600 руб и у тебя есть бесперебойный сервер ?
Да, работает он, как правило, круглосуточно. Лично у меня перебой был только один раз за пару месяцев. Тут все зависит от дата-центра. Только стоит учитывать, что VDS - виртуальный сервер. Тебе будет выделен не отдельный компьютер, а лишь часть его оперативной памяти, ядер процессора и жесткого диска.(все выбирается в зависимости от тарифа) Так же в большинстве случаев можно выбрать и операционную систему.(Windows Server всегда идет на порядок дороже и требует больше ресурсов) В итоге, после недолгой настройки ты получишь удаленный рабочий стол арендованного тобою сервера. Сам закидываешь туда все необходимые программы, настраиваешь среду. Тех. поддержка обычно помогает и может даже сделать все за тебя. Естественно, можно арендовать и целый компьютер в дата-центре. Только арендовать лучше сразу на длительный срок, например на год, т.к. за установку такого сервера в дата-центр с тебя возьмут дополнительные средства, в среднем 5к рублей за машину.
ЦитатаAdom ()
Самим собирать по комплектующим ?
Всегда собираю с нуля. Получается чуть ли не в полтора раза дешевле и в случае неисправности одной из деталей не придется весь системник по гарантии везти. Можно сразу же в день поломки получить совершенно новые комплектующие на замену старым, при этом не переплачивая.(Я совсем недавно так обменял блок питания 550W на 600W)
Но все же лучше арендовать сервера в дата-центрах. В случае каких-то сбоев будет к кому придраться.
Сообщение отредактировал Storm54 - Суббота, 03 Мая 2014, 23:49
Можно и способом, который предложил Левша, но проще воспользоваться методом Contains
ЦитатаAdom ()
У меня вопрос. Может глупый но вопрос. А SmartFox платен ? Т.е если скачаешь и начнешь пользоваться не нужно платить там ?
Чем тебя Photon Cloud не устроил? Или нужен просчет каких-то значений на стороне сервера? Для этого существует Photon Server. Если нет возможности держать сервер дома, то приобрети простенький VDS - в среднем стоит рублей 600 в месяц. Ничего с тобой не случится, если деньги, полученные от родителей, потратишь не на очередную игрушку, а на действительно полезную вещь.
Сообщение отредактировал Storm54 - Суббота, 03 Мая 2014, 22:33
Нет смысла, т.к. приложение, созданное на юнити, в любом случае требует больше ресурсов, чем, например, обычное standalone приложение на C++. Но даже если не брать в счет ресурсы(хотя это уже плохой подход), то разрабатывать все-равно будет не очень удобно. Могут возникнуть проблемы с GUI, да и в конце концов приложение попросту может не запустится на некоторых машинах. Советую смотреть в сторону Qt - кроссплатформенность, система сигналов и слотов, удобный редактор интерфейса. Кулинарную книгу можно склепать за вечер, даже к серверу с рецептами привязать не трудно
Цитатаdzrone3488 ()
Может быть если у тебя хорошо получится сделать простую програмку на Unity то может ты сделаешь открытие, а потом урок или туториал book на эту тему и станешь известным .
Не будет там никакого открытия. В итоге получится приложение, которое использует ничтожную часть движка. Это как ядерный реактор запустить для снабжения одного дома с газовой печкой.
Сообщение отредактировал Storm54 - Суббота, 03 Мая 2014, 22:16
В общем, команду ты не соберешь. Конечно, ты можешь попросить присоединиться к тебе других таких "искателей", которые вечно хотят стать какими-нибудь руководителями, но это мало что изменит. Самый нормальный способ приблизиться к геймдеву - обучиться хотя бы азам одной из основных профессий, связанных с созданием игр. На мой взгляд, лучше всего будет заняться программированием, т.к. это уже даст возможность создавать самые простые игры. Хотя, конечно, можно заняться 3D моделлированием или даже попробовать себя в роли художника. Возможно, у тебя найдутся задатки одной из этих профессий. И мой тебе совет: проходи мимо всяких конструкторов игр, в которых не нужно программировать, т.к. поделки, созданные с помощью этих средств, не дадут тебе никакого опыта, да и игрой твоей это считаться по-большому счету не будет.
Сообщение отредактировал Storm54 - Суббота, 03 Мая 2014, 21:54
Ну в целом выглядит не так уж и плохо, но зачем было делать верхние десять игр на 40% страницы? Да еще и меню слева огромное, в котором всего 3 ссылки. Само содержимое сайта смотреть вообще не удобно. Мой совет: Верхний список игр сделать в один ряд и расположить по всей ширине экрана, картинки этих игр уменьшить в полтора раза. Левое меню убрать, либо сделать его очень маленьким, т.к. от него практически нет толку. Чувствуется, что сайт разрабатывался в основном под разрешения 4:3, т.к. на них выглядит не так плохо. Вот как это выглядит в Full HD:
Как видно, места для полезной информации совсем не осталось. Сидеть на таком сайте нет никакого желания. Даже на засранных рекламой файлообменниках чувствую себя более комфортно.
Сообщение отредактировал Storm54 - Среда, 30 Апреля 2014, 23:37
Хоть тс и написал что знает про корутин, однако можно как то так
Насколько я знаю, если наследовать класс от MonoBehaviour, то работать он будет только в качестве компонента на GameObject'е, в таком случае было бы слишком затратно, скажем, создать пару сотен таймеров.
Сообщение отредактировал Storm54 - Пятница, 25 Апреля 2014, 06:59
Добавлено (25.04.2014, 00:28) --------------------------------------------- Вот мой аналог таймера: Простота использования аналогична стандартному таймеру в C# Сначала я хотел реализовать с использованием отдельных потоков, но из-за этого могли возникнуть проблемы, поэтому пришлось делать другим методом. Создаем объект - пустышку и кидаем на него скрипт TimerManager - этот класс производит обновление всех активных таймеров. Стоит учесть, что скрипт делает объект не-уничтожаемым при переходе на другую сцену, так что на каждой сцене не нужно плодить лишних менеджеров, хотя и ошибок это не вызовет.
Ну а теперь дело за малым:
Код
void Start() { SimpleTimer timer = new SimpleTimer(5);//Создаем объект. Вторым необязательным параметром можно указать, запускать ли таймер сразу при создании объекта. timer.OnTimer += new SimpleTimer.SimpleTimerEvent(TimerActivated); // Подписываемся на событие, которое кинет таймер. timer.Start(); // Запускаем таймер. }
void TimerActivated(SimpleTimer timer) { timer.OnTimer -= new SimpleTimer.SimpleTimerEvent(TimerActivated); // Желательно отписаться от события таймера. Хотя сделать это можно где-нибудь еще, например в OnDestroy
Debug.Log("Timer activated !"); }
Сами классы:
TimerManager
Код
using UnityEngine;
public class TimerManager : MonoBehaviour { public static TimerManager mgr;
public delegate void TimerManagerEvent(); public event TimerManagerEvent OnUpdate;