Как нарисовать квадрат / Каляки-Маляки (каляки-маляки, Каляки-Маляки, Каляки маляки, ) :: Творческая лаборатория :: длиннопост :: разное

#Творческая лаборатория Каляки-Маляки длиннопост 

Как нарисовать квадрат

Этот пост является ответом к этому комментарию.


Однако оформлен отдельным постом так как материал может оказаться полезным.

Заранее предупреждаю, я не художник, в художке никогда не был. Весь материал ниже отражает мою проф деформацию.

Повторяйте на свой страх и риск, автор не несёт никакой ответственности за ваши действия.


Итак, преступим:


Как нарисовать квадрат


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


Что может быть сложного в том чтобы нарисовать квадрат? Рисовать мы его будем в перспективе. Как известно, для построения перспективы используются точка схода (vanishing point). Однако точки схода помогают построить параллельные и перпендикулярные линии, но не помогают в соблюдении пропорций.

Давайте рассмотрим случай с двумя точками схода, так будет проще объяснить, а потом если нужно, я покажу, что будет в случае с одной точкой схода.


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


Как далеко располагать точки схода друг от друга? Нужно понимать, что мы рисуем точки схода, которые соответствуют двум перпендикулярным направлениям. Соответственно угол между ними - 90 градусов. Есть такая штука как field of view (FOV), это угловой размер поля зрения. Выбор этом величины очень крайне важен, так как существенно меняет восприятие рисунка.

Вот например анимация с википедии, где одновременно меняется FOV и расстояние до объекта, так чтобы размеры объекта на проекции оставались постоянными.



FOV определяет, насколько сильными будут перспективные искажения. Обычно, если нужно изобразить объект который находиться далеко, то нужны минимальные перспективные искажения, если нужен большой объект близко, то наоборот - большие.

Соответственно, чем меньше расстояние между точками схода на нашем рисунке, тем больше перспективные искажения. Я буду рисовать две точки схода, так как нам понадобятся дополнительные построения, однако я также изображу рамку, которая будет обозначать границы нашего рисунка.


Р/ч-Мцд Риг/ВКА,Творческая лаборатория,разное,Каляки-Маляки,каляки-маляки, Каляки-Маляки, Каляки маляки, ,длиннопост

Давайте попробуем нарисовать квадрат:

Р/ч-Мцд Риг/ВКА,Творческая лаборатория,разное,Каляки-Маляки,каляки-маляки, Каляки-Маляки, Каляки маляки, ,длиннопост

Где же расположить дальнюю грань? Какая линия даст нам квадрат: красная, зеленая или синяя?


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


Но мы гадать не будем.


Для начала, нужно провести вертикальную ось рисунка, она должна быть по центру:



Р/ч-Мцд Риг/ВКА
V/,Творческая лаборатория,разное,Каляки-Маляки,каляки-маляки, Каляки-Маляки, Каляки маляки, ,длиннопост


Затем, отметим средину, между точкой схода V1 и V2:

Творческая лаборатория,разное,Каляки-Маляки,каляки-маляки, Каляки-Маляки, Каляки маляки, ,длиннопост


Начертим окружность, соединяющую V1 и V2. Отметим пересечение этой окружности с вертикальной осью. 


СПч-А И НА РИ СУНКА-
ГРЛН1/Щ/1 РИГ УИК А,Творческая лаборатория,разное,Каляки-Маляки,каляки-маляки, Каляки-Маляки, Каляки маляки, ,длиннопост

Это пересечение - особая точка, я ее называю точка "вниз". Она имеет такую особенность, что из нее обе точки схода видны под прямым углом. И эта точка точно соответствует направлению вниз.


СПч-А И НА W С-У И IO-
ГРАНИЦ/! РИГ УИК А,Творческая лаборатория,разное,Каляки-Маляки,каляки-маляки, Каляки-Маляки, Каляки маляки, ,длиннопост

Затем, нам нужно провести прямую из точки "вниз" так, чтобы она образовала угол под 45. Отметим пересечение этой прямой с линией горизонта как V3. Это третья точка схода, для линий под 45 к двум другим точкам схода.


Творческая лаборатория,разное,Каляки-Маляки,каляки-маляки, Каляки-Маляки, Каляки маляки, ,длиннопост

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


СПч-А И НА РИ СУНКА-
ГРЛН1/Щ/1 РИГ УИК А,Творческая лаборатория,разное,Каляки-Маляки,каляки-маляки, Каляки-Маляки, Каляки маляки, ,длиннопост

Как видим, мы совсем не угадали с дальней гранью в самом начале. Да, на рисунке может показаться, что что-то не то, но это самый настоящий квадрат, я гарантирую это. Для убедительности, давайте дорисуем его в куб.


Творческая лаборатория,разное,Каляки-Маляки,каляки-маляки, Каляки-Маляки, Каляки маляки, ,длиннопост


И конечно же, все эти построения можно не делать, а на глаз определить положение точки "вниз" и затем на глаз поставить V3. А дальше рисовать с помощью V3 диагонали для примитивов.


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

Вот например, замечательный рисунок Xand'a, который мне очень нравится, но там беда с перспективой. Технически, все точки схода, все линии, все стоит правильно, но ошибка в пропорциях.

Способ выше, я придумал сам для себя, однако вполне возможно, что подобное давно используется или есть что-то лучше.

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



Подробнее

Р/ч-Мцд Риг/ВКА
Р/ч-Мцд Риг/ВКА
Р/ч-Мцд Риг/ВКА V/

СПч-А И НА РИ СУНКА- ГРЛН1/Щ/1 РИГ УИК А
СПч-А И НА W С-У И IO- ГРАНИЦ/! РИГ УИК А

СПч-А И НА РИ СУНКА- ГРЛН1/Щ/1 РИГ УИК А

Творческая лаборатория,разное,Каляки-Маляки,каляки-маляки, Каляки-Маляки, Каляки маляки, ,длиннопост
Еще на тему
Развернуть
круть
gilead gilead 14.07.201715:27 ответить ссылка 0.7
Краткий курс Паррамона одним постом] Ня!
*Grammar Nazi Mode ON* В настоящее время употребляется слово "середина". "Средина" - устаревшее слово и в современной речи практически не используется. *Grammar Nazi Mode OFF*
asthun asthun 14.07.201715:44 ответить ссылка -1.1
Каюсь
int16 int16 14.07.201715:45 ответить ссылка 0.0
А "преступим" не смутило?
cityrat cityrat 14.07.201720:01 ответить ссылка -0.4
Ощутил себя на паре по начертательной геометрии. Как же блять плавился мозг от этих "А сейчас проведем перпендикуляр от зеркальной линии под 45 градусов и найдем реальную длину линии".
ImSok ImSok 14.07.201717:14 ответить ссылка 1.2
Как мне не хватает черчения( Моя любимая пара в технаре была
Спасибо за классный пост
Flashm6 Flashm6 14.07.201717:57 ответить ссылка 1.3
Всегда пожалуйста!
int16 int16 14.07.201719:36 ответить ссылка 0.0
А умеешь круглую перпективу, чтобы тип рыбий глаз?
Mousy Mousy 14.07.201720:29 ответить ссылка -0.9
Не знаю почему но, раздражает.
Нет, знаю почему. Недостаточно подробно там где это нужно, оставляет некоторые вопросы без ответов.
Почему именно на пересечении окружности и вертикали угол в 90(да,да... но тем не менее)? Как быть уверенным, что тот угол не подвержен перспективному искажению? "Да, на рисунке может показаться, что что-то не то, но это самый настоящий квадрат, я гарантирую это." А вдруг именно по этому?)
И почему вертикаль именно в середине рисунка? Точка взгляда? А как же композиция и прочие вещи?
Частичные знания могут быть вредными.
И у Xand'а ошибка именно в линиях, а не пропорциях. Неправильная перспектива, + упущены детали которые помогли бы казаться ей правильной.
Padlyko Padlyko 14.07.201723:30 ответить ссылка 0.0
Мм, и в комментариях ему это показали. Я всё еще про арт Xand'а
Я категорически не согласен, с тем что там в комментариях написали.
Wikipedia написал:

>> Просто выбрал вторую точку перспективы неправильно — синюю, а не зеленую, которая лежит на горизонте и вне кадра.

Ну как это неправильно выбрал точку перспективы? Их можно задать и так, как это сделал Xand. Я специально в примере выше, выбрал точки схода таким же образом.

И с линиями все в порядке, все параллельности соблюдены. Вся причина в том, что пропорции неправильные.

Чем ближе точки схода друг к другу, тем больше перспективные искажения и больше шансов налажать. То, что предложил Wikipedia, это просто раздвинуть из немного. Тогда искажения меньше и ошибка в пропорциях меньше.

Но справедливости ради, даже в исправленном варианте Wikipedia, все равно лажа с перспективой, хоть и не так сильно заметная.
int16 int16 15.07.201708:03 ответить ссылка 0.1
Я не знаю, что Wikipedia имел в виду, но он был прав когда говорил, что точка схождения выбрана не верно, и почти исправил ошибку с перспективой вынеся точку вправо. Стеклянная стена явно параллельна бассейну и стене из под которой направлен взгляд. Доски на полу в свою очередь перпендикулярны этой линии. Там где оконные балки заворачивают и становятся крышей, они по идее должны стать параллельными доскам, но они почему-то почти не подвержены перспективному искажению(да еще и свет все отражают с одной грани, которая у всех повернута под одним углом), ощущение дискомфорта только усиливается тем, что окно продолжается отражением на воде, где эти две плоскости соприкасаются и получается "чезанаф" как на картинке ниже. И либо приходиться себя убеждать, что бассейн не прямоугольный, либо мириться с тем что он скрутился и теперь с горкой в левой части. И как уже понятно, есть два способа исправить тот рисунок, это либо параллели пола рисовать из другой точки, либо окно.
Wikipedia исправил ошибку не уменьшением искажений, а приведением их к общему, пускай и не до конца, из-за чего тебе и кажется, что всё еще что то не так. Даже просто посмотри на первую его схему, точка где сходиться параллель досок и крыша над ней
Xand: Вообще у меня было точек 5 и они перемещались, в какой то момент две потерялись и одна уехала ) Я думаю этого хватит.

Насчет придирки к посту. Гораздо удобней пользоваться инструментом когда знаешь его устройство и принципы работы, а не волшебной палочкой, которая должна "помочь". Можно применить его в других ситуациях например и т.д.
Хотя, может это и исключительно мой бзик :D
>> но он был прав когда говорил, что точка схождения выбрана не верно

Мне ты на слово не веришь, говоришь, покажи почему там угол 90, почему искажений нет, и т.д.. А тут сказали, что точка выбрана не верна, ок, неверно так не верно.

Почему не верно? По какому критерию неверно?

И с той позицией точек, можно было бы нарисовать правильно.
Ошибка в том, что дальняя грань бассейна нарисована слишком далеко. Она там почти на горизонте, находится за километры от нас. И купол гигантский, то же на пару километров возвышается.
И несмотря на то, что бассейн уходит почти в бесконечность, текстура воды слева нарисована так, как буд-то там почти нет перспективных искажений, отчего кажется, что там перепад высот.
int16 int16 15.07.201714:12 ответить ссылка 0.0
Я тебе выше описал по какому критерию не верно. Неужели я так хреново описал это? =_=
Грань бассейна не может быть нарисована слишком далеко, от этого зависят только размер и форма бассейна, но никак не восприятие всей картины в целом.
Я чуть позже сделаю схему что бы показать что я имею в виду, если уж на словах я так хреново объясняю.
Вот держи.
Красные линии - точка схода балок ближней стены, потолка и параллельных им граней бассейна.
Синие линии - точка схода по которой нарисованы доски.
Зеленые - точка схода по которой нарисована дальная стена.
Желтые линии проведены из зеленой точки схода, и они проведены в местах над которыми должны быть балки на стеклянной крыше, на схематическом срезе слева я примерно отметил высоту на которой проходят желтые линии.

Теперь проблема которую я пытаюсь объяснить.
На пол мы смотрим с небольшой высоты и с очень большим углом обзора, искажение очень сильное. Дальняя стена, нарисована из той же точки(почти) и она воспринимается в том же пространстве что и пол.
В то время как ближняя стена, и её отражение в бассейне имеют минимум искажений, мы смотрим на них с совершенно другим углом обзора и воспринимаются они совершенно иначе, будто другое измерение. На мелком рисунке я разделил эти две зоны разным цветом.

Wikipedia когда вынес точку перспективы вправо, выровнял уровень искажения по всему рисунку, он сделал это не идеально потому некий дискомфорт еще есть.

Если нарисовать грань бассейна ближе, он только станет уже, но не перестанет казаться кривым, потому что две части рисунка нарисованы совершенно с разными углами обзора.
К тому же, у широкого угла обзора есть еще и новые искажения и на рисунке их нет, но это уже тема ля отдельного разговора
Если уж и это тебя не убедит, то я сдаюсь.
Когда я спрашивал "По какому критерию неверно?", я хотел услышать объективную причину. Ты мне перечислил ряд субъективных, таких как "там искажения большие, а там меньше, воспринимается как другое измерение".

Чисто с технической стороны, выполнить рисунок с выбранными точками схода можно, и если сделать это правильно, мозг он ломать не будет.

Желтые, зеленые и синие линии, это все одна точка схода. Т.к. соответствует одному и тому же семейству параллельных прямых.

>> мы смотрим на них с совершенно другим углом обзора

Как так? Что ты понимаешь под углом обзора? Я понимаю вот это: https://en.wikipedia.org/wiki/Angle_of_view . Угол обзора одинаков для всего рисунка по умолчанию. Его нельзя сделать разным для разных частей рисунка.

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

Да да, перестанет :). Но рисунок будет смотреться иначе.
int16 int16 18.07.201710:12 ответить ссылка 0.0
Уголо обзора это то самое что ты понял. Гугли широко угольный объектив, вот именно с такого мы и смотрим на ту часть рисунка которая розовая(за исключением отсутствия пары искажений)
Я не просто так разделил внизу рисунок цветами. Обрати внимание на голубую часть. Единственная точка схода которой он соответствует - красная, и после этого ты говоришь что рисунок выполнен с учетом всех параллелей? =_="

Посмотри ту статью, что ты скинул, самая первая схема. Человек видит вокруг себя округлую панораму. Но рисунок на который они переноситься - плоский, нельзя перенести панораму на плоскость без искажений. И чем больший угол обзора этой панорамы ты пытаешься втиснуть в рамки рисунка - тем сильнее искажения(как глобус и плоские карты). Когда я говорю что у них разные углы обзора, я имею в виду именно этот факт. Очередная картинка, цвета соответствуют схеме в прошлом сообщении, черная линия - холст. Что бы понять уровень искажения можно просто сравнить длинну линии с длинной её проекции на холст

А еще просто к слову скажу, горизонт и уровень взгляда это не одно и тоже, а то ты к нему так прицепился, что настораживает.
>> Но рисунок на который они переноситься - плоский, нельзя перенести панораму на плоскость без искажений.

Нигде не идет речь об округлой панораме, нигде. Мы говорим о перспективной (центральной) проекции. Панорамы это совершенно другая, не относящаяся к теме штука.

Нет там никаких разных углов обзора. Последняя картинка мне вообще мозг взорвала. При чем тут это?

Голубая часть не противоречит ни одной из точек. Там вообще ничего не противоречит ни одной из точек.
int16 int16 18.07.201717:22 ответить ссылка 0.0
Я ретируюсь.
Вряд ли найду в себе силы боле доступно выразить свою мысль.
Рисовать, что бы наглядно показать о чем я говорю мне тоже лень =_="
>> Обрати внимание на голубую часть. Единственная точка схода которой он соответствует - красная, и после этого ты говоришь что рисунок выполнен с учетом всех параллелей? =_="

Окей, покажи мне хотя бы одну линию, которая принадлежит голубой части и при этом не соответствует синей точке схода (да или любой другой).
int16 int16 18.07.201717:26 ответить ссылка 0.0
>> Но рисунок на который они переноситься - плоский, нельзя перенести панораму на плоскость без искажений.

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

Чувак, честно, я устал. Давай не будем продолжать это?
int16 int16 18.07.201717:30 ответить ссылка 0.0
>> Гораздо удобней пользоваться инструментом когда знаешь его устройство и принципы работы, а не волшебной палочкой, которая должна "помочь". Можно применить его в других ситуациях например и т.д.

А теперь яснее стало? Согласись, если бы я все это (что ниже) вывалил в сам пост, то он был бы нечитаем.

>> Хотя, может это и исключительно мой бзик :D
Да нет, все правильно, это не бзик. Я сам такой. Пока не знаешь как оно работает, не знаешь и границ приминимости, и не знаешь, что важно, а что нет.
int16 int16 15.07.201714:18 ответить ссылка 0.1
Я описал метод, а не почему он работает.

То, что раздражает, это хорошо. Никогда нельзя верить на слово. Да я не описывал только шаги и не объяснял мотивацию, стоящую за ними потому, что иначе пост был бы слишком перегружен.

Ну раз спросили.

Начнем с конца.

1. Диагональ
У нас есть две точки схода. Мы условились, что они соответствуют двум перпендикулярным направлениям. По ним можно легко нарисовать прямоугольник в перспективе.

Но мы рисуем квадрат, у квадрата диагональ лежит под 45 к его граням. Если бы у нас была точка схода, соответствующая направлению, которое образует угол 45 градусов с двумя другими точками схода, то мы бы построили диагональ, а значит и квадрат.

Возражения есть? Как по мне, тут предельно ясно.

2. Точка схода для линий образующих 45 градусов с двумя другими направлениями
Эту точку нельзя просто взять и произвольно поставить. Она не может находится в произвольном месте. А точное положение угадать тяжело.

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

Возражения есть?

3. Точка без искажений
Горизонтальная плоскость будет проецироваться без искажения только в той точке, в которой она перпендикулярна к наблюдателю.

Если смотреть на тетрадный лист строго перпендикулярно, то искажений нет, если под углом - то искажения есть.

Чтобы найти такую точку, нужно опустить перпендикуляр из точки наблюдателя, к горизонтальной плоскости. Эта точка на горизонтальной плоскости и будет той точкой, которую я в описании назвал точкой "вниз"

Возражения есть?

4. Опускаем перпендикуляр
А вот тут внимание, здесь все становится не слишком тривиальным.

Чтобы быть чуть более конкретным, вот вид со стороны:
int16 int16 15.07.201707:52 ответить ссылка 0.3
U3, 1-д/щЯ)А'г<?Л-‘1
int16 int16 15.07.201707:53 ответить ссылка 0.4
Нам нужно найти точку "Вниз". Как мы раньше сказали, в ней не будет перспективных искажений для горизонтальной плоскости.

Давайте сузим поиски. Направление на V1 и V2 перпендикулярны, т.е. образуют прямой угол. Значит в точке без искажений, угол тоже должен быть прямым. Из теоремы Фалеса углол прямой, будут лежать на окружности диаметр которой построен на V1 и V2.

Отвечая на вопрос про прямой угол:
int16 int16 15.07.201707:54 ответить ссылка 0.3
Хорошо, точка должна быть на окружности, но не в произвольном месте. Чтобы найти искомую точку, проведем плоскость через наблюдателя перпендикулярно горизонтальной плоскости и перпендикулярно проекционной плоскости. Такая плоскость будет обязана пройти через точку "вниз" и через перпендикуляр опущенный из наблюдателя на проекционную плоскость. При этом на проекции, это плоскость будет линией (т.к. она перпендикулярна проекционной плоскости), что позволяет ее очень просто построить.

Другими словами, нужно провести линию на рисунке, которая:

1) Перпендикулярна горизонту
2) Проходит через перпендикуляр опущенный из наблюдателя на проекционную плоскость. Перпендикуляр опущенный из наблюдателя на проекционную плоскость будет в центре рисунка, думаю это самоочевидно.

Т.е. нужна линия которая:

1) Перпендикулярна горизонту
2) Проходит через центр рисунка

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

Линия должна проходить через центр, и это не имеет никакого отношения к композиции.

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

Вот и все, думаю было убедительно.

Пользуйтесь методом и стройте правильные квадраты.
int16 int16 15.07.201707:55 ответить ссылка 0.4
ХЗ, но захотелось скинуть вот "это"
оу йис, благодарю за гайд по перспективе
TheFikus TheFikus 23.10.201713:30 ответить ссылка 0.9
Неплохо.
Только зарегистрированные и активированные пользователи могут добавлять комментарии.
Похожие темы

Похожие посты
но^ fxJoTca V*/**~«J (labo pe?itop> Pit6.fi ПяЛ? P« s. 5 ¿xx к, И. i:; í* i; г* ¡i i: i: i-i: i: i ¡ i ; i; I ¡ ü fu nOlW^1' CHM¿ Л ПРоГК& Г(1~ УеСки X - Л-6 «-cS"-t (jl* cy ^ ~ YtjLO'-t--* í«/*ÍA ? a)v// /О-и^л^л^о- r /2 /k^c í’ W' é,'0/ / — г<А /о . .PtV Vt^ fr=*
подробнее»

Каляки-Маляки,каляки-маляки, Каляки-Маляки, Каляки маляки, разное нарисовал сам энтомология длиннопост

но^ fxJoTca V*/**~«J (labo pe?itop> Pit6.fi ПяЛ? P« s. 5 ¿xx к, И. i:; í* i; г* ¡i i: i: i-i: i: i ¡ i ; i; I ¡ ü fu nOlW^1' CHM¿ Л ПРоГК& Г(1~ УеСки X - Л-6 «-cS"-t (jl* cy ^ ~ YtjLO'-t--* í«/*ÍA ? a)v// /О-и^л^л^о- r /2 /k^c í’ W' é,'0/ / — г<А /о . .PtV Vt^ fr=*