1

Тема: Суперскладна архітектурно-філософська проблема, стосується MMO

Йо. От я вже трохи розібрався з фізичним двигуном, і почав думати над тим, як імпортувати в нього землю.
Під землею я маю на увазі ту землю, по котрій гравці ходять в онлайн іграх.
Ну - в фізичному двигуні земля задається масивом вертексів, тобто нічого складного немає в тому, аби спочатку записати ті вертекси в файл, а потім зчитати і відтворити фізичний варіант землі.
Але тут я подумав, для чого я взагалі виношу землю на сервер? (ну це типу фіз. двигун буде на стороні серверу).
Звісно, я це роблю для того, аби якісь чіторги не могли ламати мою гру і проходити повз гори, стіни і т.д.
І тут я подумав, земля - це одне, а от стіни і все інше - це вже зовсім друге. Я маю на увазі, що земля - одне ціле, а стіни і будинки - це інші цілі фігури, котрі просто знаходяться на землі.
І що ж це виходить? Я маю відтворювати на стороні серверу повний фізичний світ з усіма деревами, будинками і т.д. ?
Але якщо земля - це, по суті, як зім'яний шматок паперу, котрий не буде потребувати багато ресурсів, то усі ті дерева і будинки вже набагато складніші деталі, і їх багато, тобто вони можуть сильно навантажувати сервер.
Плюс до цього, в фізичному двигуні існують як примітиви, (сфера, конус, куб, циліндр і т.д.), котрі не сильно завантажують сервер, так і оті набори вертексів, котрі сильно завантажують сервер. І якщо будинок в мене- це одне ціле, то, майбуть, краще було б розбити цей будинок на примітиви, і при цьому це все якось треба експортувати в файл і імпортувати в фіз. двигун.
Як вирішити - які предмети мають бути на стороні серверу, і які на стороні клієнту?

тут спілкуються українці, про політику, і інше (серед них є програмісти, але дуже мало, тому не заходьте туди лише з питаннями про програмування)
https://discord.gg/Zk29v4P

2

Re: Суперскладна архітектурно-філософська проблема, стосується MMO

Дерево цілком може бути на стороні серверу циліндром, а будинок паралелопіпедом

Подякували: quez, Blast2

3

Re: Суперскладна архітектурно-філософська проблема, стосується MMO

Якщо земля буде на стороні клієнта, а стіна на стороні сервера - кулхацкери будуть ходити над/під стіною.
На правах роздуму: Я чому б все не перенести на сторону клієнту, а на стороні сервера лиш перевіряти якісь контрольно-критичні точки. Ну наприклад є огорожа з 3-х сторін, і користувач з протилежного боку від "входу" не може ж за 0.1 сек попасти з середини назовні і тому подібне.

x

4

Re: Суперскладна архітектурно-філософська проблема, стосується MMO

Vo_Vik написав:

Дерево цілком може бути на стороні серверу циліндром, а будинок паралелопіпедом

будинок, в котрий можна заходити!!1

тут спілкуються українці, про політику, і інше (серед них є програмісти, але дуже мало, тому не заходьте туди лише з питаннями про програмування)
https://discord.gg/Zk29v4P

5 Востаннє редагувалося FakiNyan (15.01.2015 18:53:23)

Re: Суперскладна архітектурно-філософська проблема, стосується MMO

Chemist-i написав:

Якщо земля буде на стороні клієнта, а стіна на стороні сервера - кулхацкери будуть ходити над/під стіною.
На правах роздуму: Я чому б все не перенести на сторону клієнту, а на стороні сервера лиш перевіряти якісь контрольно-критичні точки. Ну наприклад є огорожа з 3-х сторін, і користувач з протилежного боку від "входу" не може ж за 0.1 сек попасти з середини назовні і тому подібне.

І як ви то хочете закодити? Тоді на кожну таку позицію треба вишати якийсь тригер, чи що....
+ як буди з неігровими персонажами, ну типу моби?

тут спілкуються українці, про політику, і інше (серед них є програмісти, але дуже мало, тому не заходьте туди лише з питаннями про програмування)
https://discord.gg/Zk29v4P

6

Re: Суперскладна архітектурно-філософська проблема, стосується MMO

Розбийте всі об’єкти на рухомі і нерухомі :)

Говорила баба діду: «Я поїду к Білодіду, Ізучу двомовну мову І вернусь обратно знову». А дід бабі: «Не *изди, К Білодіду нєт їзди, — Туди не ходять поїзди»

7

Re: Суперскладна архітектурно-філософська проблема, стосується MMO

0xDADA11C7 написав:

Розбийте всі об’єкти на рухомі і нерухомі :)

ііі?

тут спілкуються українці, про політику, і інше (серед них є програмісти, але дуже мало, тому не заходьте туди лише з питаннями про програмування)
https://discord.gg/Zk29v4P

8

Re: Суперскладна архітектурно-філософська проблема, стосується MMO

Якщо об’єкти у вас, такі які можна знищувати чи модифікувати, то будинок таки треба малювати як 4 стіни. Якщо його не можливо модифікувати ігровими методами, то я би робив окрему локацію.

9

Re: Суперскладна архітектурно-філософська проблема, стосується MMO

Vo_Vik написав:

Якщо об’єкти у вас, такі які можна знищувати чи модифікувати, то будинок таки треба малювати як 4 стіни. Якщо його не можливо модифікувати ігровими методами, то я би робив окрему локацію.

Щось я не наздогнав, де тре робити окрему локацію?

тут спілкуються українці, про політику, і інше (серед них є програмісти, але дуже мало, тому не заходьте туди лише з питаннями про програмування)
https://discord.gg/Zk29v4P

10

Re: Суперскладна архітектурно-філософська проблема, стосується MMO

В будинку ж.

МАКЕ ЦКЯАІИЕ БЯЕАТ АБАІИ

11

Re: Суперскладна архітектурно-філософська проблема, стосується MMO

quez написав:

В будинку ж.

а це ідея, такий собі данжик, ага?

тут спілкуються українці, про політику, і інше (серед них є програмісти, але дуже мало, тому не заходьте туди лише з питаннями про програмування)
https://discord.gg/Zk29v4P

12

Re: Суперскладна архітектурно-філософська проблема, стосується MMO

речі стають простішими, якщо їх розділити.

13

Re: Суперскладна архітектурно-філософська проблема, стосується MMO

я тут дещо зрозумів, в самій юніті, коли я створюю якийсь об'єкт, то яким би він не був складним, я вішаю на нього примітивні колайдери, або декілька їх, якщо потрібно, тому що колайдери згенеровані з мешу дуже важко обробляються, і взагалі, то все тупо.
Якщо подумати, то мені все одно, чи зламає чітор гру таким чином, щоб змогти пройти через стілець, або невеличке дерево, інша справа, коли він проходить там, де заборонено проходити ігровою логікою (наприклад, в лабіринтах).
Тому все, що мені потрібно:

  • наліпити примітивних колайдерів

  • на ті, котрі потрібні на стороні серверу, повісити відповідні теги

  • зібрати до купи всі колайдери з відповідним тегом

  • записати в файлик їх тип, розміри, позицію та поворот

Ну а потім просто зчитати це і перетворити в об'єкти на сервері

тут спілкуються українці, про політику, і інше (серед них є програмісти, але дуже мало, тому не заходьте туди лише з питаннями про програмування)
https://discord.gg/Zk29v4P