Автор Тема: CopperCube  (Прочитано 47309 раз)

Оффлайн Striver

  • Житель
  • недоинженер, полупрограммист
    • http://striver00.ru
Обзор программирования сценариев (написания скриптов) в CopperCube

Цитировать
Если вы хотите быстро проверить код, который только что изменили при создании вашего действия или поведения, то используйте "Edit -> Plugins -> Reload and Verify Extensions" «Правка -> Дополнения -> Перезагрузить и проверить расширения», чтобы проверить, является ли ваше действие допустимым, и компилятор JavaScript принимает ваш код.
Если вы хотите быстро проверить код, который только что изменили при создании вашего действия или поведения, то используйте "Edit -> Plugins -> Reload and Verify Extensions" «Правка -> Дополнения -> Перезагрузить и проверить расширения», чтобы проверить, является ли ваше действие допустимым, и что компилятор JavaScript принимает ваш код.

Цитировать
При запуске приложения созданного под платформы Windows .exe или Mac OS X .app, в CopperCube будет отображаться окно отладки со всеми возникающими ошибками.
При запуске приложения, созданного под платформы Windows .exe или Mac OS X .app, в CopperCube будет отображаться окно отладки со всеми возникающими ошибками.

Цитировать
Загрузка расширений
Если вы не хотите изучать программирование, то вы можете загрузить расширения, созданные другими пользователями. Они доступны на официальном сайте:
Скачать сценарии поведений
Скачать сценарии действий
Теперь тебе придётся перевести ещё и эту страничку с описаниями расширений...  :)

Оффлайн Striver

  • Житель
  • недоинженер, полупрограммист
    • http://striver00.ru
Re: CopperCube
« Ответ #106 : 19 Май 2019, 23:10:00 »
Цитировать
В общем, не трож Бейсик и я не буду тягать Питона за хвост...
Так я ж с самого начала написал, что ничего против Бэйсика не имею.

Оффлайн Samovar

  • Житель
Re: CopperCube
« Ответ #107 : 19 Май 2019, 23:19:32 »
Цитировать
Теперь тебе придётся перевести ещё и эту страничку с описаниями расширений...  :)
Это в планах после завершения перевода основной справки... после того как переведу API, стану больше разбираться в программируемом функционале...


Допущу ещё одно лирическое отступление, по поводу инструментария для перевода, если кому-то это интересно. Я ничего не шарю в HTML, CSS, XML и прочем сайтострое. Потому пользуюсь бесплатным Microsoft Expression Web 4... до этого использовал Amaya, но она часто корявила разметку, почему-то...
« Последнее редактирование: 19 Май 2019, 23:48:13 от Samovar »

Оффлайн Striver

  • Житель
  • недоинженер, полупрограммист
    • http://striver00.ru
Платформа Windows (.exe)
« Ответ #108 : 19 Май 2019, 23:43:30 »
Платформа Windows (.exe)

Цитировать
Ниже будет использовать файл сценария «myscript.js» вместо скомпилированного внутри приложения, и покажет консоль отладки, если какая-либо строка текста будет напечатана в вашем сценарии.
Следующая команда будет использовать файл сценария «myscript.js» вместо скомпилированного внутри приложения, и покажет консоль отладки, если какая-либо строка текста будет напечатана в вашем сценарии.

Цитировать
При публикации вашего файла с как приложения Windows .exe, CopperCube включит этот сценарий в файл .exe и будет использовать его в качестве основного сценария.
При публикации вашего файла как приложения Windows .exe, CopperCube включит этот сценарий в файл .exe и будет использовать его в качестве основного сценария.

Цитировать
Чтобы протестировать его и разрабатывать свою игру, сделайте следующее:
Чтобы протестировать эту интеграцию, и разрабатывать с ней свою игру, сделайте следующее:

Цитировать
Создайте в этом каталоге текстовый файл с именем «steam_appid.txt», добавив в качестве текстового контента ваш магазин в Steam.
Создайте в этом каталоге текстовый файл с именем «steam_appid.txt», добавив в качестве текстового контента ваш appid (идентификатор приложения) в магазине Steam.

Цитировать
Полноэкранный режим теперь будет автоматически изменятся в соответствии с разрешением экрана пользователя.
Полноэкранный режим теперь будет автоматически изменяться в соответствии с разрешением экрана пользователя.

Цитировать
Переключение между игрой и другими приложениями станут очень быстрым.
Переключение между игрой и другими приложениями станет очень быстрым.

Цитировать
Теперь можно перейти в полноэкранный режим, нажав на окне кнопку «Развернуть».
Можно переходить в полноэкранный режим, нажав у окна кнопку «Развернуть».

Цитировать
При публикации вашего приложения, CopperCube создаст папку с именем «dxredist», в паке где находится ваше приложение.
При публикации вашего приложения CopperCube создаст папку с именем «dxredist» там же, где находится ваше приложение.

Оффлайн Samovar

  • Житель
Re: CopperCube
« Ответ #109 : 20 Май 2019, 00:02:25 »
Премного благодарен! Исправил.

Оффлайн Samovar

  • Житель
Re: CopperCube
« Ответ #110 : 20 Май 2019, 03:05:45 »
Обзор встроенных поведений

CopperCube включает в себя несколько поведений, которые могут быть добавлены к любому трехмерному и двумерному объекту в сцене. Благодаря этому, возможно не только анимировать трехмерные объекты, но и добавить интерактивность вашему трехмерному приложению, такие как: реагирование на нажатия клавиш и кнопок, воспроизведение звуков или даже создание игровых персонажей, контролируемых искуственным ителлектом (AI).
Доступ к поведениям можно получить в окне свойств 'Properties' «Свойства» каждого объекта сцены на вкладке 'Behaviors' «Поведения»:




Ниже приведен список с кратким описанием встроенных типов поведений:


Наименование 
Описание

Fly in a circle
(Летать по кругу)   

Позволяет узлу сцены перемещаться по кругу. Поддерживаются следующие параметры:
  • Center (Центр): Трёхмерные координаты центра круга.
  • Radius (Радиус): Значение, определяющее размер круга.
  • Speed (Скорость): Значение, определяющее скорость движения. Более высокие значения = более быстрое движение.
  • Direction (Направление): Если вы не хотите, чтобы круг располагался горизонтально, укажите здесь другой 3D-вектор.

Rotate
(Вращаться)   

Позволяет узлу сцены вращаться вокруг себя. Поддерживаются следующие параметры:
  • Rotation (Вращение): Три значения, определяющие скорость вращения для каждой оси. Чем больше значение, тем быстрее вращается узел сцены вокруг каждой оси.

Fly along a line
(Летать вдоль линии)   

Заставляет узел сцены перемещаться по прямой линии. Поддерживаются следующие параметры:
  • Start (Начало): 3D-позиция определяющая положение начала линии.
  • End (Конец): 3D-позиция определяющая положение конца линии.
  • TimeForWay (Время в пути): Количество времени в миллисекундах, за которое узел сцены должен переместиться вдоль всей линии. Например, значение 10000, означает 10 секунд.
  • Loop (Повторять): Установите флажок, чтобы узел повторял движение вдоль линии, или снимите флажок, чтобы он переместился вдоль линии только один раз.

Follow a path
(Следовать пути)   

Заставляет узел сцены следовать по трехмерной траектории, состоящей из нескольких узловых точек. Вы можете определить путь, просто создав объект пути в редакторе (используйте 'Edit -> Insert -> Create a path' «Правка -> Вставить -> Создать путь»). Следующие параметры поддерживаются этим поведением:
  • PathToFollow (Путь следования): Трехмерный путь, по которому должен следовать узел сцены (3D-объект). Выберите путь из списка существующих  в текущей сцене путей.
  • TimeNeeded (Необходимое время): Интервал времени в миллисекундах, в течение которого узлу трехмерной сцены нужно переместится по всей траектории. Например, значение 10000 означает 10 секунд.
  • LookIntoMovementDirection (Смотреть в направлении движения): Если установлен флажок, то во время движения узел сцены будет смотреть в направлении движения.
  • AdditionalRotation (Добавочный поворот): Когда установлен флажок LookIntoMovementDirection (Смотреть в направлении движения), это может быть использовано для дополнительного поворота, который используется для поворота узла сцены в правильном направлении вдоль пути.
  • TimeDisplacement (Смещение времени): Время в миллисекундах, используемое для смещения запуска движения по траектории относительно начальной точки пути.

...

Примечание: Это одна из самых сложных частей, в плане терминологии, соответствующей поведениям объектов в CopperCube... и на этом построена вся его логика... и скорей всего, всё выше написанное будет достаточно радикально изменено не один раз, в плане терминологии, чтобы логика была более понятна...

Striver, был и есть у меня долгосрочный план, постепенно перевести внимание новичков CopperCube на Freebasic и Irrlicht... вероятно, от того я и вспылил на счёт Бейсика (БЭйсика, если угодно :) )... не всё так просто затевалось... я стараюсь, по возможности, объединять темы, которые я создал на форуме, в какое-то подобие целого, что бы инфа из них дополняла друг-друга... т.к. я больше знаком с ЯП Basic, то Freebasic у меня в приоритете... И я буду отстаивать свою позицию и виденье, также, как в случае рендереров Internal vs Cycles :)
« Последнее редактирование: 20 Май 2019, 04:01:26 от Samovar »

Оффлайн Striver

  • Житель
  • недоинженер, полупрограммист
    • http://striver00.ru
Обзор встроенных поведений
« Ответ #111 : 20 Май 2019, 09:58:00 »
Обзор встроенных поведений

Цитировать
Благодаря этому, возможно не только анимировать трехмерные объекты, но и добавить интерактивность вашему трехмерному приложению, такие как: реагирование на нажатия клавиш и кнопок, воспроизведение звуков или даже создание игровых персонажей, контролируемых искуственным ителлектом (AI).
Благодаря этому возможно не только анимировать трехмерные объекты, но и добавить интерактивности вашему трехмерному приложению, например: реагирование на нажатия клавиш и кнопок, воспроизведение звуков или даже создание игровых персонажей, контролируемых искуственным ителлектом (AI).

Цитировать
3D-позиция определяющая положение начала линии.
3D-позиция, определяющая положение начала линии.

Цитировать
3D-позиция определяющая положение конца линии.
3D-позиция, определяющая положение конца линии.

Цитировать
Например, значение 10000, означает 10 секунд.
Например, значение 10000 означает 10 секунд.

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

Цитировать
Когда установлен флажок LookIntoMovementDirection (Смотреть в направлении движения), это может быть использовано для дополнительного поворота, который используется для поворота узла сцены в правильном направлении вдоль пути.
Когда установлен флажок LookIntoMovementDirection (Смотреть в направлении движения), этот параметр можно использовать для дополнительного поворота, чтобы отрегулировать направление взгляда узла сцены вдоль пути.
Очень сильно перелопатил предложение, возможно, стало неверно. Лучше перепроверь за мной это место.

Оффлайн Samovar

  • Житель
Re: CopperCube
« Ответ #112 : 20 Май 2019, 19:46:37 »
Благодарю. Поправил.
Цитировать
Очень сильно перелопатил предложение, возможно, стало неверно. Лучше перепроверь за мной это место.
Потыкал эти параметры в редакторе, и нифига не заметил разницы... Пока оставил твой вариант.
Вообще, справка не полная... Позже выложу более полный вариант поведения Follow a path

Оффлайн Samovar

  • Житель
Re: CopperCube
« Ответ #113 : 21 Май 2019, 00:16:05 »
Striver, я перекурю несколько дней от перевода... малёха подзадолбался... нужен перерыв...


Касаемо того, аналоги каких знаменитых 3D-игр можно достаточно просто воплотить на СopperCube (конечно, не с супер-пупер графикой, но с такой же играбельностью).
Tomb Raider, Half-Life, Blade of Darkness, Silent Hill и т.п. в общем, аркады, шутеры и адвенчуры... стратегии и симуляторы - это слишком сложно.
« Последнее редактирование: 21 Май 2019, 00:33:49 от Samovar »

Оффлайн Striver

  • Житель
  • недоинженер, полупрограммист
    • http://striver00.ru
Re: CopperCube
« Ответ #114 : 21 Май 2019, 00:37:06 »
Цитировать
Tomb Raider, ...
Лариска 2006-го года на этой картинке кажется симпатиШнее остальных  :)

Или всё-таки 2003-го?...

Оффлайн Samovar

  • Житель
Re: CopperCube
« Ответ #115 : 21 Май 2019, 00:44:10 »

Х.з. я гонял только в первые три :)  прошлого века...  Согласен, что 2006 лучше остальных в плане гармонии реалистичность-привлекательность (золотая середина и компромисс). Остальные впадают в крайности. А симпатичней Анжелина в фильме (хоть и  с сиськами на полэкрана ) , новомодная актриса мне не нравицо :) , хоть она и, как актриса, лучше... я привык к изначальному древнему образу жопасто-сисястой Лары Крофт :)  и именно с волосами сплетёнными в косу, а не собранными в хвостик...





Мода, мать её ... :)  ... и ребрендинг...

И да, уровень виза у CopperCube начала нулевых, увы... Скорей всего, это в основном обусловлено прошлой поддержкой Flash и нынешней WebGL.
« Последнее редактирование: 21 Май 2019, 01:18:22 от Samovar »

Оффлайн Samovar

  • Житель
Re: CopperCube
« Ответ #116 : 22 Май 2019, 19:44:06 »
Если запечь карты освещения c помощью Блендера, то подобный виртуальный тур легко можно собрать и в CopperCube для WebGL, без особых заморочек... (+ объект типа "вода" для отражений в зеркалах). А вот с глянцевыми материалами придётся долго мутить, но тоже возможно, сделать нечто подобное, если кинуть шум на карту нормалей и запечь карту ложных отражений...либо как-то решить через GLSL шейдер программно, но это для меня через чур сложно...
Здесь использовался  Unreal 4 и, скорей всего, всё:  AO, и статические тени, рендерятся в режиме реального времени, сжирая производительность (можно сделать более оптимизировано и симпатично)
3D тур по 4x комнатной квартире. Визуализация интерьера.
https://youtu.be/Qftj9mDFzVc

И так же просто это всё делается в UPBGE
« Последнее редактирование: 22 Май 2019, 20:27:46 от Samovar »

Оффлайн Samovar

  • Житель
Re: CopperCube
« Ответ #117 : 24 Май 2019, 19:31:45 »
...

Follow a path
(Следовать пути) 
Заставляет узел сцены следовать по трехмерной траектории, состоящей из нескольких узловых точек. Вы можете определить путь, просто создав объект пути в редакторе (используйте 'Edit -> Insert -> Create a path' «Правка -> Вставить -> Создать путь»). Следующие параметры поддерживаются этим поведением:
  • PathToFollow (Путь следования): Трехмерный путь, по которому должен следовать узел сцены (3D-объект). Выберите путь из списка существующих  в текущей сцене путей.
  • TimeNeeded (Необходимое время): Интервал времени в миллисекундах, в течение которого узлу трехмерной сцены нужно переместиться по всей траектории. Например, значение 10000 означает 10 секунд.
  • LookIntoMovementDirection (Смотреть в направлении движения): Если установлен флажок, то во время движения узел сцены будет смотреть в направлении движения.
  • AdditionalRotation (Добавочный поворот): Когда установлен флажок LookIntoMovementDirection (Смотреть в направлении движения), этот параметр можно использовать для дополнительного поворота, чтобы отрегулировать направление взгляда узла сцены вдоль пути.
  • TimeDisplacement (Смещение времени): Время в миллисекундах, используемое для смещения запуска движения по траектории относительно начальной точки пути.
  • WhenEndReached (Когда достигнут конец пути): Одно из списка действий, которое произойдёт при достижении объектом конца пути. Можно указать следующие действия:
    • - Start Again (Запустить сначала): Запускает движение объекта с начала пути.
    • - Stop (Остановить): Останавливает движение объекта по пути.
    • - Switch To Camera (Переключиться на камеру): Делает камеру активной, которую можно выбрать в дополнительном параметре Camera (Камера).
    • - Start Again and do Action (Запустить сначала и выполнить действие): Запускает движение объекта по пути сначала и выполняет действие, которое можно выбрать в дополнительном параметре Action (Действие).
    • - Stop and do Action (Остановить и выполнить действие): Останавливает движение объекта по пути и запускает действие, которое можно указать в дополнительном параметре Action (Действие).
...

Оффлайн Samovar

  • Житель
Re: CopperCube
« Ответ #118 : 25 Май 2019, 17:19:19 »
...
Collide When Moved
(Сталкиваться при перемещении)   
Это поведение позволяет перемещать трехмерные объекты в трехмерном мире не пропуская их сквозь стены. Просто прикрепите это поведение к активной камере, и при перемещении она не будет проходить сквозь стены, где «стены» - это трехмерные объекты, у которых в окне их свойств установлен атрибут Collision «Сталкиваться». Смотрите Столкновение для получения дополнительной информации.
Поддерживаются следующие параметры:
  • Size (Размер): Три значения, определяющие размер эллипсоида вокруг трехмерного объекта. На самом деле, только эллипсоид сталкивается с трехмерным миром, поэтому он должен быть достаточно большим, чтобы вместить в себя трехмерный объект.
  • RelativePosition (Относительное положение): Относительное положение эллипсоида вокруг трехмерного объекта. Если используется камера, то это уровень "глаз".
  • AffectedByGravity (Влияет гравитация): Если флажок установлен, то применяется гравитация, установленная для этой сцены. Вы можете изменить гравитацию, выбрав корневой узел сцены в SceneGraph Explorer (Менеджере сцены).
  • EnableInclination (Включить наклон): Когда этот флажок установлен, объект будет повернут в соответствии с уклоном поверхности. Полезно, если вы используете столкновения для объектов имитирующих транспортные средства.
При использовании этого поведения во время перемещения объекта иногда возможно его  застревание в геометрии. Для предотвращения застревания, всегда размещайте 3D-объект в таком положении, чтобы вначале желтый эллипсоид не сталкивался со стенами. Если 3D-объект застревает во время движения, проблема может заключаться в полигональной 3D-сетке мира: нужно быть внимательным и осторожным при моделировании статической геометрии, с которой должен сталкиваться 3D-объект. Геометрия всегда должна быть замкнутой, и нигде не должно быть торчащих односторонних треугольников,  обычно в этих местах и происходит застревание.
Кроме того, если вершины, которые должны быть расположены вместе, находятся не совсем в одной точке, это может вызвать проблемы. Если используемое программное обеспечение для трехмерного моделирования поддерживает функцию слияния вершин, то рекомендуется сделать это. Обычно это помогает.
Кроме того, вы можете использовать переменную  colSmallDistance для изменения 'small distance' «малого расстояния», чтобы регулировать минимальное расстояние определения столкновений в вашей системе.

...

Оффлайн Samovar

  • Житель
Re: CopperCube
« Ответ #119 : 25 Май 2019, 20:30:22 »
...
Model Viewer Camera Style Controlled
(Контроллер камеры в стиле обзора модели)   
Данное поведение можно использовать только совместно с камерами. Камера, к которой подключено это поведение, ведет себя как средство обзора 3D-модели. Она может вращаться пользователем вокруг цели камеры путём перемещения мыши.
Поддерживаются следующие параметры:
  • RotateSpeed (Скорость вращения): Скорость вращения камеры, когда пользователь перемещает мышь.
  • Radius (Радиус): Радиус сферы вокруг цели камеры.
  • VerticalMovementAllowed (Разрешить вертикальное перемещение): Определяет, можно ли перемещать камеру вверх и вниз.
  • LookOnlyWhenMouseDown (Обзор только при нажатой клавише мыши): В CopperCube существует небольшая разница между приложениями WebGL / Flash и Windows / MacOS. В целевых платформах WebGL и Flash нельзя скрыть указатель мыши и при этом перемещать камеру, поэтому камера будет поворачиваться только тогда, когда нажата левая клавиша мыши. На платформах Windows и Mac OS  этого не требуется. Если установить флажок в этом параметре, то камера будет вести себя на платформах Windows / Mac OS X, как в WebGL и Flash.
  • SlideAfterMovementEnd (Скользить после окончания перемещения): Работает при включённом параметре LookOnlyWhenMouseDown (Обзор только при нажатой клавише мыши). Включает продолжение перемещения камеры по инерции после отпускания левой клавиши мыши.
    • - SlideSpeed (Скорость скольжения): Задаёт скорость перемещения камеры при скольжении.
       
  • AllowZooming (Разрешить увеличение): Определяет, можно ли увеличивать и уменьшать обзор с помощью колёсика мыши.
    • - MinZoom (Минимальное увеличение): Задаёт минимальное увеличение.
    • - MaxZoom (Максимальное увеличение): Задаёт максимальное увеличение.
    • - ZoomSpeed (Скорость увеличения): Задаёт скорость увеличения и уменьшения при прокрутке колёсика мыши.
...

 


Яметрика

* По форуму

* Рекламный блок

* Последние вложения

1 (1).png
Скачано: 91
Автор: LEXA ANЭGROWND
blender.png
Скачано: 97
Автор: ipv2007
4.png
Скачано: 127
Автор: hiroyukiss
2.png
Скачано: 146
Автор: hiroyukiss

Скачано: 157
Автор: Dilifa12