Форум Pawn-Wiki.Ru - Воплоти мечту в реальность!: 3D Text с обводкой - Форум Pawn-Wiki.Ru - Воплоти мечту в реальность!
Урок будет очень короткий, кому помогло ставим "+" :) Начнем. Для начала, как и все 3d тексты мы создадим его.
Давайте разберем все подробнее(Автор подробного разбора "Romzes", спасибо ему):
text[] - Сам текст,текст который будет отображатся 3D,используется в "Текст" color - цвет 3D текста,к примеру COLOR_RED Float:X, Float:Y, Float:Z - координаты X,Y,Z - Вы можете снять их командой /save - это 3 певые координаты,пример 1562.5466,562.4622,14.7152 Float:DrawDistance - расстояние на котором будет виден 3D текст к примеру 25.0 virtualworld - виртуальный мир в котором будет отображаться 3D текст testLOS - если 0 будет виден сквозь обьекты,если 1 то нет!
Ну в принципе с разбором все ясно и понятно Давайте применим все на практике. В OnGameModeInit:
Ну и начало моего урока начинается с этого ? Не спешите компилировать мод и смотреть, что вышло, т.к. урок еще не закончился. И так, видим мы цвет данного 3d текста > COLOR_YELLOW Данный цвет, мы изменяем на число "-1" Мы дали понять, что мы убирает цвет, но выставляем обводку. Чтобы добавить цвет, в поиске гуглим > Таблица безопасных цветов > Выбираем код цвета Допустим я выбрал > FFFF00 - желтый. Получается у нас:
Если что-то не понятно, спрашивайте, уточню :)
- Группа: Активные пользователи
- Сообщений: 130
- Регистрация: 07 октября 13
- Группа: Активные пользователи
- Сообщений: 4 214
- Регистрация: 14 марта 12
Star4iK <3 (16 ноября 2014 - 23:11) писал:
Фу-фу-фу! Не плоди тут говнокодеров! Этим ты ничего никому не даёшь понять. Это ты просто указываешь белый цвет (если ты не в курсе, любой цвет является обычным числом. Будь то "0xFFFFFFFF" (число в шестнадцатеричной системе счисления) или же "-1" (в десятичной). Например, красный цвет в шестнадцатеричной выглядит так: "0xFF0000FF", а в десятичной - так: "-16776961". Как бы ты его не записал, красным он быть не перестал.
И да, эту самую "обводку" (которая, как уже подметили выше, является прозрачностью) не обязательно делать так, как сделал ты. Достаточно в Create3DTextLabel указать правильно цвет:
И всё. Так что находи свой макрос с цветом, заменяй последние два символа на "FF" и не нужно изобретать никаких велосипедов.
Ну и давай разберём сразу запись цвета в шестнадцатеричной системе счисления, дабы и себя не путал, и других. Надеюсь, для тебя не секрет, что в Pawn (как и во многих других ЯП) используется цветовая модель под названием RGB ("Red, Green, Blue" aka "Красный, Зелёный, Синий"). И от того, сколько в "палитре" будет того или иного оттенка, будет зависеть финальный цвет. И вот как раз количество указывается числом/символом.
Вот тебе табличка, которая показывает параллель между десятичной системой счисления и шестнадцатеричной: http://breedpmnr.ru/i/16C290A (но не думай, что для перевода из одной системы в другую достаточно просто воспользоваться такой таблицей. Там всё немного сложнее. Можешь сам загуглить).
А теперь давай разберём какой-нибудь цвет используя эту таблицу. Например, зелёный: " 0x00FF00FF " "0x" - Это своеобразный указатель на то, что число написано в шестнадцатеричном формате (например, заполнитель, который выводит шестнадцатеричное число, выглядит так: "%x". Проводи ассоциации и всё такое) "00" - Это мы указывает то, сколько в нашей "палитре" будет красного цвета (RGB). (Если смотреть в таблицу, то можно увидеть, что первым стоит число "0", а последним - "F". "FF" - Это мы указывает то, сколько в нашей "палитре" будет зелёного цвета (RGB). . соответственно, "0" указывает на отсутствие цвета, а "F" на то, что цвета будет максимум) "00" - Это мы указывает то, сколько в нашей "палитре" будет красного цвета (RGB). "FF" - А вот это указывает на то, насколько прозрачен будет цвет. В данном случае наш цвет будет непрозрачным/ярким. Если указать "00", он станет максимально прозрачным (если нику игрока указать максимальную прозрачность, игрок исчезнет с радара). Именно этот параметр тебе нужно было отрегулировать, ибо когда ты указываешь цвет в фигурных скобках, он по дэфолту становится максимально прозрачным.
И да, цифры/буквы можно комбинировать. Например, можно сделать так: "0xF0A5440F" или же так: "0xFF00001F". То есть, пара чисел, что относятся к тому или иному оттенку, не зависят друг от друга и могут различаться. И от этого, соответственно, зависит финальный цвет.
Ну, вроде, всё рассказал.
- Группа: Активные пользователи
- Сообщений: 163
- Регистрация: 13 мая 14
DeimoS (17 ноября 2014 - 00:23) писал:
Фу-фу-фу! Не плоди тут говнокодеров! Этим ты ничего никому не даёшь понять. Это ты просто указываешь белый цвет (если ты не в курсе, любой цвет является обычным числом. Будь то "0xFFFFFFFF" (число в шестнадцатеричной системе счисления) или же "-1" (в десятичной). Например, красный цвет в шестнадцатеричной выглядит так: "0xFF0000FF", а в десятичной - так: "-16776961". Как бы ты его не записал, красным он быть не перестал.
И да, эту самую "обводку" (которая, как уже подметили выше, является прозрачностью) не обязательно делать так, как сделал ты. Достаточно в Create3DTextLabel указать правильно цвет:
И всё. Так что находи свой макрос с цветом, заменяй последние два символа на "FF" и не нужно изобретать никаких велосипедов.
Ну и давай разберём сразу запись цвета в шестнадцатеричной системе счисления, дабы и себя не путал, и других. Надеюсь, для тебя не секрет, что в Pawn (как и во многих других ЯП) используется цветовая модель под названием RGB ("Red, Green, Blue" aka "Красный, Зелёный, Синий"). И от того, сколько в "палитре" будет того или иного оттенка, будет зависеть финальный цвет. И вот как раз количество указывается числом/символом.
Вот тебе табличка, которая показывает параллель между десятичной системой счисления и шестнадцатеричной: http://breedpmnr.ru/i/16C290A (но не думай, что для перевода из одной системы в другую достаточно просто воспользоваться такой таблицей. Там всё немного сложнее. Можешь сам загуглить).
А теперь давай разберём какой-нибудь цвет используя эту таблицу. Например, зелёный: " 0x00FF00FF " "0x" - Это своеобразный указатель на то, что число написано в шестнадцатеричном формате (например, заполнитель, который выводит шестнадцатеричное число, выглядит так: "%x". Проводи ассоциации и всё такое) "00" - Это мы указывает то, сколько в нашей "палитре" будет красного цвета (RGB). (Если смотреть в таблицу, то можно увидеть, что первым стоит число "0", а последним - "F". "FF" - Это мы указывает то, сколько в нашей "палитре" будет зелёного цвета (RGB). . соответственно, "0" указывает на отсутствие цвета, а "F" на то, что цвета будет максимум) "00" - Это мы указывает то, сколько в нашей "палитре" будет красного цвета (RGB). "FF" - А вот это указывает на то, насколько прозрачен будет цвет. В данном случае наш цвет будет непрозрачным/ярким. Если указать "00", он станет максимально прозрачным (если нику игрока указать максимальную прозрачность, игрок исчезнет с радара). Именно этот параметр тебе нужно было отрегулировать, ибо когда ты указываешь цвет в фигурных скобках, он по дэфолту становится максимально прозрачным.
И да, цифры/буквы можно комбинировать. Например, можно сделать так: "0xF0A5440F" или же так: "0xFF00001F". То есть, пара чисел, что относятся к тому или иному оттенку, не зависят друг от друга и могут различаться. И от этого, соответственно, зависит финальный цвет.