Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   www.boolean.name > Программирование игр для компьютеров > Unity > Уроки

Ответ
 
Опции темы
Старый 05.05.2011, 12:45   #1
shady
AnyKey`щик
 
Регистрация: 05.05.2011
Сообщений: 3
Написано 0 полезных сообщений
(для 0 пользователей)
Unity3D - печать

Помогите распечатать картинку в формате .png из Unity3D.

Поискал в интернете но так и ничего не нашел.
(Offline)
 
Ответить с цитированием
Старый 05.05.2011, 13:08   #2
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,505
Написано 2,960 полезных сообщений
(для 5,247 пользователей)
Ответ: Unity3D - печать

Для какой платформы разработка? Windows/Mac?
(Offline)
 
Ответить с цитированием
Старый 05.05.2011, 13:16   #3
shady
AnyKey`щик
 
Регистрация: 05.05.2011
Сообщений: 3
Написано 0 полезных сообщений
(для 0 пользователей)
Ответ: Unity3D - печать

Windows
(Offline)
 
Ответить с цитированием
Старый 05.05.2011, 13:28   #4
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,505
Написано 2,960 полезных сообщений
(для 5,247 пользователей)
Ответ: Unity3D - печать

Вот варианты:
1. Попробовать подключить библиотеки Mono к проекту, что-то типа System.Drawing и использовать их для печати.
2. Объявить необходимые WinAPI для такой цели и использовать их.
3. Написать внешнее приложение, принимающее через коммандную строку путь до созданной png картинки и вызывать его.
(Offline)
 
Ответить с цитированием
Старый 05.05.2011, 13:39   #5
shady
AnyKey`щик
 
Регистрация: 05.05.2011
Сообщений: 3
Написано 0 полезных сообщений
(для 0 пользователей)
Ответ: Unity3D - печать

При добавлении в скрипт using System.Drawing;

пишет такую ошибку

Assets/Scripts/MouseTexture/MousePrint.cs(7,14): error CS0234: The type or namespace name `Drawing' does not exist in the namespace `System'. Are you missing an assembly reference?
(Offline)
 
Ответить с цитированием
Старый 05.05.2011, 16:12   #6
Taugeshtu
scientist.alien
 
Аватар для Taugeshtu
 
Регистрация: 12.02.2007
Сообщений: 2,098
Написано 1,030 полезных сообщений
(для 2,593 пользователей)
Ответ: Unity3D - печать

Assets/Scripts/MouseTexture/MousePrint.cs(7,14): error CS0234: The type or namespace name `Drawing' does not exist in the namespace `System'. Are you missing an assembly reference?
Предположу, что System.Drawing не входит в стандартные инклюды/поставку Unity.
Я бы попробовал:
Найти этот самый System.Drawing где-нибудь в виде cs и вставить непосредственно в сам проект, или поискать, где юнити держит mono-файлы, и вставить туда недостающий кусок.
Поскольку недавно обновлялся до 3.1, могу точно сказать, что где-то в недрах инсталляции этот самый mono живёт в полностью представленном в Unity виде.
Также точно знаю, что при добавлении в проект скрипта "System" он перекрывал стандартный mono-вский System, а значит - одно из представленных выше предположений может дать результат.
__________________
Public service announcement: вы можете заблокировать отображение сообщений определённого пользователя, добавив его ник в список игнорируемых.
Tau lab.
We LOVE you. We MADE you.
(Offline)
 
Ответить с цитированием
Старый 05.05.2011, 17:57   #7
h1dd3n
Бывалый
 
Аватар для h1dd3n
 
Регистрация: 19.06.2008
Сообщений: 677
Написано 263 полезных сообщений
(для 448 пользователей)
Ответ: Unity3D - печать

в скрипт добавляешь using System.Drawing;
находишь нужный длл в mono. лежат они в Unity\Editor\Data\Mono\lib\mono\2.0
кидаешь в папку с проектом. добавляешь длл в ассеты. компилируешь.
ps КРАЙНЕ НЕ РЕКОМЕНДУЕТСЯ ТАК ДЕЛАТЬ! (не факт что заработает у тебя, а если и заработает то высока вероятность того, что не заработает на другом компе)
Не зря drawing не включен в стандартный набор библиотек.
(Offline)
 
Ответить с цитированием
Эти 2 пользователя(ей) сказали Спасибо h1dd3n за это полезное сообщение:
maxturbo (05.05.2011), pax (05.05.2011)
Старый 05.05.2011, 18:10   #8
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,505
Написано 2,960 полезных сообщений
(для 5,247 пользователей)
Ответ: Unity3D - печать

Сообщение от h1dd3n Посмотреть сообщение
добавляешь длл в ассеты.
Только не забывайте добавлять ее не просто в ассеты а в папку Plugins
(Offline)
 
Ответить с цитированием
Старый 06.05.2011, 05:05   #9
h1dd3n
Бывалый
 
Аватар для h1dd3n
 
Регистрация: 19.06.2008
Сообщений: 677
Написано 263 полезных сообщений
(для 448 пользователей)
Ответ: Unity3D - печать

Сообщение от pax Посмотреть сообщение
Только не забывайте добавлять ее не просто в ассеты а в папку Plugins
Почему именно в plugins? (это же managed dll)
Конечно лучше выделить какую-нибудь папку, чтобы дллки в корне не валялись, но имя может быть например ManagedDlls или как захочется.
(Offline)
 
Ответить с цитированием
Старый 06.05.2011, 07:19   #10
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,505
Написано 2,960 полезных сообщений
(для 5,247 пользователей)
Ответ: Unity3D - печать

Вообще я руководствовался вот этой статьей
http://unity3d.com/support/documenta...l/Plugins.html
Но читал давно, перечитал, ничего не нашел про managed dll ... странно... но мы давно используем структуру папок примерно такую:
[Assets]/[Имя плагина]/[Plugins]/[рантайм dll]
[Assets]/[Имя плагина]/[Plugins]/[Editor]/[Editor dll]
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +1, время: 08:38.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com