Показать сообщение отдельно
Старый 17.08.2011, 20:46   #8
moka
.
 
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений
(для 6,863 пользователей)
Ответ: BlitzMAX сервер / Blitz3D клиент (RakNET)

Если проще, то у тебя есть два варианта, которые я бы лично рассматривал:

1.
Server: BlitzMax + RakNet
Client: BlitzMax + RakNet + Xors3D

2.
Server: C# + Sockets (System.Net.Sockets)
Client A: C# + Sockets + Xors3D / OpenTK
Client B: BlitzMax + Sockets + Xors3D

Сравнивая их, на BlitzMax будет быстрее разрабатывать, т.к. ты уже знаком с ним, но основываясь самому языку и выбранного инструментария, возможности будут ограничены. И если рассматривать с точки зрения опыта и практических знаний, то у самого BlitzMax перспектив миниму по сравнению с C#. Когда на том же C# можно и работу найти хорошую, и проекты уже стоящие разрабатывать.
Плюс, ты зависишь от сетевой библиотеки, и всех её капризов (а они всегда есть).

Во втором варианте, сервер всё просто, только нужно самому не мало написать кода. Но какие плюсы - скорость, архитектурные возможности в сложных задачах, хорошие решения основываясь функциям языка, сериализация для сети и баз данных. Также базу данных подключить не проблема (большой выбор, куча хорошего инструментария).
Вариантов для клиента во втором варианте два (можно больше, хоть на мобилках, т.к. пишешь коммуникацию на чистых сокетах).
Первый вариант, тоже C#, что в этом хорошего? Сложность игры, и геймплая и многих решений, также может быть выше. Сетевая сериализация пакетов на сервере и клиенте, может быть реализована одной и той же библиотекой, так что не нада будет писать много кода, т.к. они используют одно и то же решение.
Можно использовать с Xors3D, без проблем, там и шейдеры есть, и привычный тебе синтаксис.
Можно писать на OpenTK (OpenGL), если есть желание мульти платформ, но тут учитывай, что OpenGL - это голенький GAPI, где нужно писать графический движок самому, и если у тебя никаких сложностей в графике, можно и так, но работы там будет писец как много. Но есть возможность если писать на Mono (альтернатива .Net, на том же C#. Технически почти никакой разницы с точки зрения разраба), то будет возможность поддержки и MacOS и Linux. А если юзать OpenGL ES, то используя MonoTouch можно компилить на iOS девайсы, а используя MonoDroid можно компилить под Android систему. Но работы снова, будет писец как много. Но опыт работы с OpenGL будет естественно очень ценным для будущего.
Второй вариант клиента, как раз тот же BlitzMax + сокеты, и использование Xors3D. По сути, лучше уже юзать первый вариант, если клиент всё таки будет на BltizMax, так будет проще и удобнее для разработки. Я бы шёл либо C# полностью либо BlitzMax полностью.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
LLI.T.A.L.K.E.R. (17.08.2011)