Перейти к содержимому
Syabro

Комната виртуальной реальности

Рекомендуемые сообщения

По сути выходит, что и крафтнет не подгружается после рестарта? О.о

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

По сути выходит, что и крафтнет не подгружается после рестарта? О.о

Почему это? У меня всё работает.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Почему это? У меня всё работает.

Таки это еще более странно:D

Выходит тогда , что какая-то проблема именно в 3D-комнате с подгрузкой, надо бы проверить, мож там за подгружаемую зону что-то выходит?

Изменено пользователем DUIIIES

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

3D-комната вообще без чанклоадера работает, в отличии от крафтнета. И, по идее, должна перегружаться, когда к ней игрок подходит.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
3D-комната вообще без чанклоадера работает, в отличии от крафтнета. И, по идее, должна перегружаться, когда к ней игрок подходит.

Тот есть программа просто на стартует стоит?

Есть предположение, что такое может случаться, если при рестарте чанк отгружен. То бишь, при включении серва система поиумолчанию выключена и подгрузка состояния не меняет (чего по-идеи не случается, когда отгрузка случается в тот момент работы комнаты, ведь при обратной загрузке чанка идет возвращение к предыдущему состоянию).

 

Советую проверить систему на работоспособность с ЧЛ.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Использовать OpenComputers!!!

Там и мониторы имеют большее разрешение!

В OpenComputers под 1.6.4 многоблочные мониторы тоже "гасят" изображение, когда смотришь на них "краем глаза".

Мы установили это, когда тестировали тир (экран 6х8), возле моего дома.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

По непонятным причинам я снова не могу войти в игру. Если у когото есть время и желание проникнуть в 3d комнату, можно попробовать следующий способ. На стенку комнаты выведен терминал, который подключен к главному компьютеру комнаты через проводные модемы. Нужно с этого терминала выдать команду на включение периферийного устройства "computer_146". Или как то так. После чего нажать кнопку на стене комнаты для входа. Для выхода из комнаты нужно подпрыгнуть.

Комната расчитана на обслуживане только одного игрока, поэтому приходите в одиночистве. И еще, не берите с собой ценных вещей. Занятие это безопасное, но всё же

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

А кнопку ты заприватил, так что туда никто не попадет. Кроме тебя.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Кнопка заменена на деревянную. Так что, теперь ее может нажать каждый. Для включения центрального компьютера комнаты следует воспользоваться терминалом и скриптом, любезно написанным Фингеркомпом. Ну а то что мониторы иногда становятся прозрачными, тут я ничего не могу поделать. Это издержки Оптифайна.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Кнопка заменена на деревянную. Так что, теперь ее может нажать каждый. Для включения центрального компьютера комнаты следует воспользоваться терминалом и скриптом, любезно написанным Фингеркомпом. Ну а то что мониторы иногда становятся прозрачными, тут я ничего не могу поделать. Это издержки Оптифайна.

Разве так сложно взять и попытатся сделать комнату на OpenComputers?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Разве так сложно взять и попытатся сделать комнату на OpenComputers?
Мне да. Ну не идет у меня ОС. Готов предоставить АПИ любому желающему для перевода на OpenComputers

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Мне да. Ну не идет у меня ОС. Готов предоставить АПИ любому желающему для перевода на OpenComputers

Я боюсь (или надеюсь), что таким желающим будет только Totoro.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Zer0Galaxy, кинь код на пастебин, я про OC узнал только сегодня, очень интересно поковырять.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Zer0Galaxy, кинь код на пастебин, я про OC узнал только сегодня, очень интересно поковырять.

http://pastebin.com/65EUXjw1#

Это не сам виртуальный мир. Это набор функций для его создания. Если лень не замучает, расскажу позже что и как там устроено.

Но если ты только сегодня узнал про ОС, даже не представляю как ты будешь все это ковырять. Тем не менее дерзай. Будут вопросы по СС - отвечу. Будут вопросы по ОС - уповай на помощь Тоторо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

http://pastebin.com/65EUXjw1#

Это не сам виртуальный мир. Это набор функций для его создания. Если лень не замучает, расскажу позже что и как там устроено.

Но если ты только сегодня узнал про ОС, даже не представляю как ты будешь все это ковырять. Тем не менее дерзай. Будут вопросы по СС - отвечу. Будут вопросы по ОС - уповай на помощь Тоторо.

Даешь объяснение!

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Даешь объяснение!

Виртуальный мир, как и мир Minecraft, имеет систему координат x,y,z. Ось x условно направлена слева направо (в сторону возрастания координаты). Ось y - снизу вверх. Ось z - вперед. Да, несоответствие с миром Minecraft, где ось z направлена назад, т.е. на юг. Но так сделано. Единица длины виртуального мира в точности соответствует размеру одного блока. Плоскость y=0 соответствует поверхности земли.

Прежде чем что-то делать в виртуальном мире, его нужно создать функцией

CreateWorld(mfront,mleft,mright,mback [,clgnd [,clsky]])

Она инициализирует наш виртуальный мир. Первые четыре параметра, которые она принимает - мониторы, на которых будет выводиться изображение. Сюда нужно подставить строки типа "monitor_N" или nil, если соответствующий монитор не используется.

Два опциональных параметра clgnd и clsky задают цвет земли и неба в нашем мире. По умолчанию земля - зеленая, небо - голубое.

 

Сразу после создания мира наблюдатель (точнее его глаза) находится в точке x=0, y=1.62, z=0

Для перемещения наблюдателя и контроля его положения служат функции:

x,y,z=getPlayerPos() - возвращает координаты глаз наблюдателя

setPlayerPos(x,y,z) - перемещает глаза наблюдателя в точку с указанными координатами

movePlayer(x,y,z) - смещает наблюдателя на указанный вектор.

 

Объекты в виртуальном мире создаются функцией

obj=CreateObj(x,y,z,paint,params)

где x,y,z - координаты точки привязки объекта, такой точки относительно которой объект будет прорисовываться;

paint - функция прорисовки объекта (о ней чуть позже)

params - необязательная таблица параметров объекта, его свойства, зависящие от самого объекта

Функция CreateObj возвращает указатель на созданный объект, который в дальнейшем можно использовать для перемещения объекта или изменения его свойств.

Все создаваемые объекты пока фантомные т.е. их видно, но они никак не взаимодействуют друг с другом и не препятствуют перемещению наблюдателя.

 

Создание объекта не приводит к его моментальной прорисовке, а только к сохранению объекта в памяти компьютера. Прорисовкой занимается функция

draw()

Она выводит на мониторы виртуальный мир так как его бы видел наблюдатель. Функцию draw надо вызывать после создания объектов, изменения их свойств и/или перемещения наблюдателя.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в тему...

×   Вы вставили отформатированное содержимое.   Удалить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.


×
×
  • Создать...