|
0 / 0 / 0
Регистрация: 24.02.2020
Сообщений: 46
|
|
.NET 3.x Реализация возможностей класса MonoBehaviour из Unity06.03.2021, 13:47. Показов 2480. Ответов 3
Метки нет (Все метки)
Здравствуйте. Хочу заранее сказать, что раздел я выбрал тот, по крайней мере, речь здесь не столько о Unity, сколько о возможностях C#.
Так вот: я делаю свой движок, наподобие Unity. И там есть класс, который по задумке должен работать как MonoBehaviour из Unity. И речь не о Update() и прочих методах (это нетрудно сделать), а автоматической замене копии объекта на ссылку на него. Если кто не знает, в Unity, если присвоить одному объекту типа Monobehaviour значение другого, это будет буквально один и тот же объект, то есть, изменяя свойства одного, так же меняются свойства и другого. Сначала хотел перегрузить оператор =, но оказалось, что нельзя. Была еще мысль, что в Unity подобная замена происходит в момент компиляции скрипта, но всё же хочется верить, что оно работает иначе, потому что сейчас нет возможности (и опыта) сделать свой компилятор. Можете подсказать, есть ли в C# какие-либо инструменты для реализации подобного? Добавлено через 11 минут UPD: Я не хочу делать компилятор еще и потому, что мне сейчас надо сделать несколько модулей (рендеринг, физика и т.д.), и без такого присваивания мне придется везде использовать ссылки. В принципе, я могу научиться делать компиляторы, но тогда я бы хотел скомпилировать dll где уже будет единственный тип, для которого такое присваивание автоматическое. Но я не уверен, что это возможно, и будет ли это нормальным решением.
0
|
|
| 06.03.2021, 13:47 | |
|
Ответы с готовыми решениями:
3
C# Socket в Unity (ClientSocket : MonoBehaviour) иногда не принимает пакеты от сервера (теряет их)
Написать программу, демонстрирующую выполнение всех возможностей класса |
|
Администратор
|
||
| 06.03.2021, 16:30 | ||
Сообщение было отмечено Fifth как решение
Решение
1
|
||
|
0 / 0 / 0
Регистрация: 24.02.2020
Сообщений: 46
|
||
| 07.03.2021, 12:42 [ТС] | ||
|
А если я использую класс, и мне не надо, чтобы он работал как ссылочный тип, то что можно сделать? Или только через клонирование?
0
|
||
|
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
|
||
| 07.03.2021, 12:53 | ||
|
Правда, структуры не поддерживают наследование.
1
|
||
| 07.03.2021, 12:53 | |
|
Помогаю со студенческими работами здесь
4
Unity реализация таблицы Реализация биллбоарда в unity Реализация платного контента на Unity 3D Реализация работы с классами, конструктор, методы класса и переменные класса Реализация класса на базе класса Stack с возможностью !индексирования! Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
|
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
|
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2.
Данный документ берёт данные из другого нетипового документа. . .
|
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
|
|
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача: реализовать программный контроль на предмет проведения документа. . .
|
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача:
1. Реализовать контроль заполнения реквизита. . .
|
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение:
DISM / Online / Add-Capability / CapabilityName:WMIC~~~~
Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
|
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача: при создании документов установить период списания автоматически. . .
|