3d форум по Blender

Другое => Программирование (любое) => Тема начата: Samovar от 18 Декабрь 2015, 01:48:03

Название: HiAsm (Графический Конструктор Программ)
Отправлено: Samovar от 18 Декабрь 2015, 01:48:03
(http://i31.fastpic.ru/big/2011/0907/62/44622a820a97c95dec85ddc6c8e69862.png)
Сайт: http://hiasm.net (http://blender-3d.ru/forum/go.php?url=aHR0cDovL2hpYXNtLm5ldA==)
Не знаю есть ли версия под Linux.
Но под Win рекомендую скачивать эту версию: https://yadi.sk/d/TYROEOcykp2t7 (http://blender-3d.ru/forum/go.php?url=aHR0cHM6Ly95YWRpLnNrL2QvVFlST0VPY3lrcDJ0Nw==) (Обновляется регулярно. Обновление, можно запустить из папки установки)
Уроки на Рутрекере: http://rutracker.org/forum/viewtopic.php?t=3721921 (http://blender-3d.ru/forum/go.php?url=aHR0cDovL3J1dHJhY2tlci5vcmcvZm9ydW0vdmlld3RvcGljLnBocD90PTM3MjE5MjE=)
или тут http://www.youtube.com/user/HiAsmVideo

Прога русская. Справка по графическому элементу вызывается клавишей F1, когда  он выделен. Куча примеров...
Можно включать и традиционный код в зависимости от решения... Супер-крутых вещей, конечно, не получится, но для утилит, и относительно простеньких прог - самое то...

З.Ы. Сложней чем игровые 2D конструкторы...но и больше возможностей...
Название: Re: HiAsm (Графический Конструктор Программ)
Отправлено: Samovar от 18 Декабрь 2015, 03:30:27
! No longer available (http://www.youtube.com/watch?v=Sw5-3y8nFIE#)
Название: Re: HiAsm (Графический Конструктор Программ)
Отправлено: Samovar от 18 Декабрь 2015, 04:00:03
Еще одна классная функция, что псевдокод передаётся с помощью Ctrl+С и Ctrl+V
Пример:

Код

Add(MainForm,15340401,28,42)
{
 Width=427
 Height=448
 Caption="Diagram 3D"
 Position=1
 Point(Handle)
 link(onCreate,5558289:doEvent1,[])
}
Add(GL_Perspective,2,182,119)
{
 Fovy=35
 zFar=100
 link(onPerspective,8988601:doBeginList,[(222,125)(222,188)])
}
Add(GL_Main,3,133,56)
{
 Color=15780518
 link(onInit,4:doInit,[])
 link(onViewPort,2:doPerspective,[(173,69)(173,125)])
 link(Handle,15340401:Handle,[(139,34)(19,34)(19,86)(34,86)])
}
Add(Timer,5,42,119)
{
 Interval=33
 Enable=1
 link(onTimer,7:doEvent1,[])
}
Add(GL_GTools,6,133,119)
{
 Point(doClear)
 Point(doPushMatrix)
 Point(doPopMatrix)
}
Add(Hub,7,84,119)
{
 OutCount=5
 link(onEvent1,6:doClear,[])
 link(onEvent2,6:doPushMatrix,[])
 link(onEvent3,9113718:doRotate,[(108,139)(108,545)])
 link(onEvent4,3:doFlip,[(114,146)(114,76)])
 link(onEvent5,6:doPopMatrix,[(124,153)(124,139)])
}
Add(Hub,5558289,70,56)
{
 OutCount=3
 link(onEvent1,3:doInit,[])
 link(onEvent2,3:doViewPort,[])
 link(onEvent3,5:doTimer,[(92,76)(92,108)(30,108)(30,125)])
}
Add(GL_GluTools,4,182,56)
{
 Texture=0
 link(onInit,26:doEnabled,[])
}
Add(GL_Light,26,231,56)
{
 Ambient=8421504
 Diffuse=15793151
 link(onEnabled,26:doMove,[(270,62)(270,97)(226,97)(226,69)])
 link(onMove,14322260:doEnabled,[])
 link(Point,9644193:Point3D,[])
}
Add(GL_Options,14322260,280,63)
{
 link(onEvent,14251063:doEnabled,[])
}
Add(GL_Options,14251063,322,63)
{
 Flag=1
 link(onEvent,614504:doEnabled,[])
}
Add(GL_Options,614504,364,63)
{
 Flag=2
 link(onEvent,12407500:doEnabled,[])
}
Add(GL_Point3D,9644193,231,14)
{
 Y=1
 Z=-2
}
Add(GL_Rotate,16196306,217,539)
{
 Z=1
 link(onRotate,3197625:doEnabled,[])
}
Add(GL_Rotate,9113718,133,539)
{
 Angle=-55
 X=1
 link(onRotate,14564239:doNext,[])
}
Add(GL_Options,12407500,406,63)
{
 Flag=8
 link(onEvent,11113631:doTexEnv,[])
}
Add(GL_Cylinder,2895704,343,539)
{
 BaseRadius=1.5
 TopRadius=1.5
 Height=0.3
 Slices=40
 Stacks=2
 link(onDraw,6183533:doDisabled,[(383,545)(383,552)])
}
Add(GL_Options,3197625,259,539)
{
 Flag=10
 link(onEvent,12728831:doDraw,[])
}
Add(GL_Options,6183533,392,539)
{
 Flag=10
 link(onEvent,2691859:doTranslate,[])
}
Add(Bitmap,6096033,616,49)
{
 HWidth=256
 HHeight=256
 Point(doCreate)
}
Add(GL_GenTextures,12939820,399,189)
{
 Index=1
 link(Bitmap,6171322:Var1,[(405,173)])
 link(onGenTextures,6096033:doClear,[(488,195)(488,62)])
}
Add(StrList,11461101,287,126)
{
 @Hint=#16:Список секторов:|32:цвет=процент занимаемый сектором|
 Strings=#11:16711680=24|6:255=10|10:4227072=36|8:65535=30|
 AddHint(-121,106,191,26,@Hint)
}
Add(Img_Rectangle,843201,616,322)
{
 Style=1
 Point(BgColor)
 Point(Point1)
 Point(Point2)
 link(onDraw,15272553:doValue,[(674,328)(674,237)])
 link(Bitmap,6171322:Var2,[])
 link(Color,13494575:Var2,[])
 link(BgColor,13494575:Var3,[(636,271)])
 link(Point1,6557064:Point,[])
 link(Point2,16709330:Point,[(650,312)(692,312)])
}
Add(ArrayEnum,15791049,301,182)
{
 link(onItem,10152765:doSplit,[])
 link(onEndEnum,5455227:doEndList,[])
 link(Array,11461101:Array,[])
}
Add(MathParse,6594185,644,182)
{
 DataCount=1
 MathStr="%0-256/100*%1"
 Default=256
 link(onResult,15469003:doColor,[(732,188)(732,414)(394,414)(394,328)])
}
Add(StrPart,10152765,497,182)
{
 Char="="
 Point(Left)
 Point(Right)
 link(onSplit,6594185:doCalc,[])
}
Add(PointXY,6557064,637,273)
{
 link(Y,13505771:Var2,[])
}
Add(PointXY,16709330,686,273)
{
 X=256
 link(Y,15272553:Value,[])
}
Add(Memory,15272553,693,231)
{
 Default=Integer(256)
 Point(Data)
 link(Data,13505771:Var3,[(699,222)])
}
Add(GetDataEx,13494575,623,266)
{
 Angle=3
 link(Data,13487493:Var3,[])
}
Add(MathParse,3112636,476,322)
{
 @Hint=#14:вычисляет угол|22:распостронения сектора|
 DataCount=1
 MathStr="360/100*%1"
 link(onResult,15081152:doDraw,[])
 link(X1,15434604:Var1,[(482,278)])
 AddHint(-70,56,127,26,@Hint)
}
Add(MathParse,13484481,574,322)
{
 @Hint=#14:вычисляет угол|14:начала сектора|
 DataCount=1
 MathStr="%0+360/100*%1"
 link(onResult,843201:doDraw,[])
 link(X1,15434604:Var3,[(580,278)])
 AddHint(-18,54,94,26,@Hint)
}
Add(GetDataEx,13487493,497,266)
{
 link(Data,10152765:Left,[])
}
Add(Gl_Translate,2691859,434,539)
{
 Z=0.3
 link(onTranslate,677836:doCallList,[])
}
Add(GetDataEx,15434604,504,273)
{
 link(Data,10152765:Right,[])
}
Add(Counter,14564239,175,539)
{
 Max=360
 link(onNext,16196306:doRotate,[])
}
Add(GL_TexEnvMode,11113631,448,63)
{
 link(onTexEnv,6096033:doCreate,[])
}
Add(GetDataEx,6171322,616,168)
{
 link(Data,6096033:Bitmap,[])
}
Add(GetDataEx,13505771,644,217)
{
 link(Data,6594185:Result,[])
}
Add(GL_Cylinder,12728831,301,539)
{
 BaseRadius=0.5
 TopRadius=0.5
 Height=0.3
 Slices=20
 Stacks=2
 link(onDraw,2895704:doDraw,[])
}
Add(Gl_BeginList,8988601,238,182)
{
 Index=2
 link(onBiginList,15791049:doEnum,[])
 AddHint(0,-27,21,13,Index)
}
Add(GL_CallList,677836,476,539)
{
 Index=2
 AddHint(5,-23,21,13,Index)
}
Add(Gl_EndList,5455227,357,189)
{
 link(onEndList,12939820:doGenTextures,[])
}
Add(GL_PartialDisk,15081152,525,322)
{
 InRadius=0.49
 Slices=30
 Stacks=30
 SweepAngle=45
 Point(SweepAngle)
 Point(StartAngle)
 link(onDraw,13484481:doCalc,[])
 link(SweepAngle,3112636:Result,[(545,310)(517,310)(517,364)(482,364)])
 link(StartAngle,13484481:Result,[(552,310)(566,310)(566,364)(580,364)])
}
Add(GL_Color,15469003,427,322)
{
 Color=128
 link(onColor,3112636:doCalc,[])
 link(Color,13487493:Var1,[(433,271)])
}
Название: Re: HiAsm (Графический Конструктор Программ)
Отправлено: Samovar от 25 Декабрь 2015, 15:48:53
Блог с уроками по HiAsm: http://hi-asm.blogspot.ru/2009/09/hiasm.html (http://blender-3d.ru/forum/go.php?url=aHR0cDovL2hpLWFzbS5ibG9nc3BvdC5ydS8yMDA5LzA5L2hpYXNtLmh0bWw=)
Тут можно поковыряться...есть 5-я версия... и вроде, для линукса есть: http://hiasm.com/down/ (http://blender-3d.ru/forum/go.php?url=aHR0cDovL2hpYXNtLmNvbS9kb3duLw==)
Название: Re: HiAsm (Графический Конструктор Программ)
Отправлено: LanuHum от 25 Декабрь 2015, 20:24:57
Тут можно поковыряться...есть 5-я версия... и вроде, для линукса есть: http://hiasm.com/down/ (http://blender-3d.ru/forum/go.php?url=aHR0cDovL2hpYXNtLmNvbS9kb3duLw==)
Там только пакеты для дебиана четырёхлетней давности. Вряд ли они и в самом дебиане последних версий станут и будут работать.
Код
[leonid@localhost ~]$ /home/leonid/build/hiasm/usr/bin/hiasm5
[main_gui.cpp]:init
/home/leonid
/home/leonid
/tmp
/home/leonid/.local/share
/home/leonid/.config
/home/leonid/.cache
/etc/xdg
/usr/share
open hiasm.db...
load PackCollection...
[Pack.cpp]:PackCollection
Sql query select pref from localization where active = 1 return empty result!
Ошибка сегментирования
[leonid@localhost ~]$

И, вот ещё файл из пакета.
Код
Package: hiasm5-dev
Version: 5.0.4
Section: devel
Architecture: amd64
Depends: sqlite3
Maintainer: Dilma <dilma@hiasm.com>
Description: HiAsm Studio 5
 Тестовая сборка HiAsm5 предназначенная исключительно для ознакомления.
Название: Re: HiAsm (Графический Конструктор Программ)
Отправлено: Samovar от 25 Декабрь 2015, 21:40:44
Значит, линуксойды в пролёте... но им нафиг такое не надо, думаю...  они все полиглоты-программисты, изначально :)
З.Ы. и чё это за система такая, в которой старый код не работает нихрена?...сами понапишут мути... разрекламируют её, а потом ещё и ругаются на то, что и с Блендером такая же херня творится... странные люди... другое дело, справедливое возмущение пользователей винды, которые привыкли к тому, что старое совместимо и работает (хоть иногда и с пинком) на новой оси...
Название: Re: HiAsm (Графический Конструктор Программ)
Отправлено: mr.A от 25 Декабрь 2015, 22:04:30
А как же сборка из исходников? Не работает?
В конце страницы http://blog.hiasm.com/article/11/ 
Название: Re: HiAsm (Графический Конструктор Программ)
Отправлено: LanuHum от 25 Декабрь 2015, 23:06:24
А как же сборка из исходников? Не работает?
В конце страницы http://blog.hiasm.com/article/11/
Код
Palette.cpp: В функции-члене «virtual void PaletteItemGroup::draw(DrawContext)»:
Palette.cpp:364:43: ошибка: «class Gtk::StyleContext» has no member named «get_text»
   Gdk::Cairo::set_source_color(dc, style->get_text(Gtk::STATE_NORMAL));
                                           ^
Palette.cpp:366:43: ошибка: «class Gtk::StyleContext» has no member named «get_text»
   Gdk::Cairo::set_source_color(dc, style->get_text(Gtk::STATE_SELECTED));
                                           ^
<встроенное>: ошибка выполнения рецепта для цели «Palette.o»
make: *** [Palette.o] Ошибка 1
[leonid@localhost src]$
Название: Re: HiAsm (Графический Конструктор Программ)
Отправлено: Samovar от 26 Декабрь 2015, 05:23:37
Цитировать
Qt
Пакет на основе Qt позволяет разрабатывать кроссплатформенные приложения. Сам HiAsm возможно запускать только через Wine.

wxWidgets
Пакет на основе wxWidgets, так же как и Qt, позволяет создавать кроссплатформенные приложения.

Лучше юзать версию 4, по ссылке вначале темы, 5-я и под Win сырая...


ВК группа : https://vk.com/hiasm
Название: Re: HiAsm (Графический Конструктор Программ)
Отправлено: Samovar от 29 Июнь 2016, 16:59:07
Файлообменник проектов HiAsm: http://forum.hiasm.com/forum_serv.php?q=55&start=0
Пример простейшего 3D редактора: http://forum.hiasm.com/forum_serv.php?q=56&id=1101
Название: Re: HiAsm (Графический Конструктор Программ)
Отправлено: Юрий Пет от 29 Июнь 2016, 17:06:50
Файлообменник проектов HiAsm: http://forum.hiasm.com/forum_serv.php?q=55&start=0
Пример простейшего 3D редактора: http://forum.hiasm.com/forum_serv.php?q=56&id=1101
Сайт forum.hiasm.com может угрожать безопасности вашего компьютера.

По нашим данным, на страницах сайта был размещён вредоносный программный код. Это могло произойти как по желанию владельцев сайта, так и без их ведома — в результате действий злоумышленников.
(браузер пишет)
Название: Re: HiAsm (Графический Конструктор Программ)
Отправлено: Samovar от 29 Июнь 2016, 17:10:41
У меня ничего не пишет... но если страшно, то лучше не ходить... а ваще, любой программный код потенциально опасен :)
хотя, возможно 3dRend прав... то была ссылка на старый форум... (надеюсь, на этот браузер не ругается)
вот файлообменник нового http://forum.hiasm.net/forum_serv.php?q=55 (http://blender-3d.ru/forum/go.php?url=aHR0cDovL2ZvcnVtLmhpYXNtLm5ldC9mb3J1bV9zZXJ2LnBocD9xPTU1)
пример 3D конструктора http://forum.hiasm.net/forum_serv.php?q=56&id=1101 (http://blender-3d.ru/forum/go.php?url=aHR0cDovL2ZvcnVtLmhpYXNtLm5ldC9mb3J1bV9zZXJ2LnBocD9xPTU2JmFtcDtpZD0xMTAx)


да точно... поглядел сейчас группу VK, там тоже пишут:
Цитировать
У меня forum.hiasm.com не работает, еще и браузер ругается на вредоносный сайт, а forum.hiasm.net нормально запускается.
Название: Re: HiAsm (Графический Конструктор Программ)
Отправлено: LanuHum от 22 Июль 2016, 20:00:32
Поковырялся я в ассемблере, почитал мнения программистов...
Ассемблер - платформозависимый язык, очень времязатратный, неудобный в использовании из-за возможностей ошибок и долгого их поиска. Поэтому писать всю огромную программу на ассемблере никто не отваживается, и, собственно, поэтому изобретали более вменяемые языки программирования, а там, где уж очень требовалось быстродействие, вставляли лишь фрагменты кода на ассемблере.
Интересная есть статейка про возможности С++, где участник обращается к ассемблерному коду и сравнивает. Оказывается, компилятор GCC может создать из С++ кода машинный код абсолютно равноценный с машинным кодом, созданным из программы, написанной на ассемблере.
https://habrahabr.ru/post/260025/
Название: Re: HiAsm (Графический Конструктор Программ)
Отправлено: Samovar от 22 Июль 2016, 23:49:27
LanuHum, HiAsm - это среда визуального проектирования (надстройка над языками программирования), а не язык программирования ассемблер.

Название: Re: HiAsm (Графический Конструктор Программ)
Отправлено: Samovar от 23 Июль 2016, 01:06:17
HiOn (конструктор программ online)
http://ide.hiasm.com


Иконки: http://icons.hiasm.net
Название: Re: HiAsm (Графический Конструктор Программ)
Отправлено: Samovar от 23 Июль 2016, 01:41:43
На счёт Ассемблера... Ассемблер до сих пор актуален и никогда своей актуальности не потеряет...
LanuHum, если хочешь, я создам тему по ассемблеру? И Си, и Си++, и FreeBasic и т.д. и т.п. многие  поддерживают ассемблерные вставки, да и код языков высокого уровня сначала  в ассемблер конвертируется, а только потом компилируется, если я не ошибаюсь...
Название: Re: HiAsm (Графический Конструктор Программ)
Отправлено: sungreen от 23 Июль 2016, 06:17:49
... вопрос на понимание - почему код на ассемблере работает быстрее? ...
Название: Re: HiAsm (Графический Конструктор Программ)
Отправлено: Samovar от 23 Июль 2016, 06:25:45
потому, что может быть "заточен" под конкретный процессор(ы)...
но не факт, что ассемблерный код будет работать быстро... всё зависит от программиста... но при желании и понимании шустрей ничего нет :)  да ещё и мусора  мало, в отличии от языков высокого уровня... и приложения очень малы по размеру и быстры... один косяк - скорость разработки...
Название: Re: HiAsm (Графический Конструктор Программ)
Отправлено: sungreen от 23 Июль 2016, 06:47:21
... да, все так и есть ...
... но ещё момент - взаимодействие процессора с памятью ...
... любое обращение к памяти требует времени ...
... но у процессора есть регистры - своя память, ограниченная но сильно шустрая ...
... если в рутине кода с чередой многократных повторений удалось разместиться только в регистрах и дёргать другую память по минимуму, то и времени соответственно требуется меньше ...
... и основная заточеность кода, наверное, как раз в том где и что хранить ...
Название: Re: HiAsm (Графический Конструктор Программ)
Отправлено: sungreen от 23 Июль 2016, 06:52:49
... а почему работа с моделью в blender раньше была (или казалась что была) быстрее? ...
Название: Re: HiAsm (Графический Конструктор Программ)
Отправлено: sungreen от 23 Июль 2016, 06:54:32
... почему вычисления на gpu, быстрее чем на cpu? ...
Название: Re: HiAsm (Графический Конструктор Программ)
Отправлено: Samovar от 23 Июль 2016, 06:54:52
Цитировать
... любое обращение к памяти требует времени ...
считай такты операций процессора ... иногда можно очень выиграть нетривиальными решениями...
Название: Re: HiAsm (Графический Конструктор Программ)
Отправлено: Samovar от 23 Июль 2016, 06:59:35
... а почему работа с моделью в blender раньше была (или казалась что была) быстрее? ...
Потому что интерфейс был не на тормознутом интерпретаторе Python, а на исполнимом коде...
Название: Re: HiAsm (Графический Конструктор Программ)
Отправлено: LanuHum от 23 Июль 2016, 07:02:27
Цитировать
LanuHum, если хочешь, я создам тему по ассемблеру?
Нет. Я почему-то подумал, что HiASM использует ассемблер, ибо созвучен с YASM и NASM в линуксе , диалектами ассемблера.
Я сейчас пытаюсь изучать С++. Сдаётся мне, что как все пути ведут в Рим, так и программиста пути ведут к С++, если интересно, конечно, написать что-то стоящее. Я уже говорил, что мне интересно было бы иметь на вооружении быстрый рендерер, но, все буквари говорят о том, что если требуется высочайшая эффективность программы, то только С или С++. Под эффективностью я подразумеваю быстродействие плюс экономичность. Блендер манипулирует десятками миллионов поликов только потому, что он написан на этих языках.
Я купил букварь Шилдта так как нашёл его более понятным для стартующего изучение, но следующая книга будет (если будет, разумеется) от создателя языка С++ Бьёрна Страуструпа
Название: Re: HiAsm (Графический Конструктор Программ)
Отправлено: Samovar от 23 Июль 2016, 07:03:14
... почему вычисления на gpu, быстрее чем на cpu? ...
сравнил кучу процов  с одним, хоть и производительным......
Название: Re: HiAsm (Графический Конструктор Программ)
Отправлено: LanuHum от 23 Июль 2016, 07:22:37
Цитировать
Потому что интерфейс был не на тормознутом интерпретаторе Python, а на исполнимом коде...
Ещё и Python3 более тормознутый, чем Python2.
Я уже ни раз сетовал на непонятные с точки зрения пользователя решения программистов. Но, программисты лишь показывают себя и свои возможности. Им по барабану юзабельность. Непонятно, почему идут у них на поводу пользователи. Написали Блендер 25 - все побежали изучать 25. Напишут Блендер 30, все побегут учить его. Какого хрена?
Название: Re: HiAsm (Графический Конструктор Программ)
Отправлено: Samovar от 23 Июль 2016, 07:26:50
LanuHum, самое смешное, что та же тенденция и в коммерческом ПО :)
Ну сам подумай, кто будет часто апгредить свой комп (железо), если на нём новое ПО (даже бесплатное ;) )не будет тормозить, или не требовать невероятных объёмов ЖД и оперативы? :)
Капитализъм :)
Название: Re: HiAsm (Графический Конструктор Программ)
Отправлено: LanuHum от 23 Июль 2016, 07:38:06
LanuHum, самое смешное, что та же тенденция и в коммерческом ПО :)
Ну сам подумай, кто будет часто апгредить свой комп (железо), если на нём новое ПО (даже бесплатное ;) )не будет тормозить? :)
Капитализъм :)
Да, так то оно так. Только непонятно, где же эти просто увлечённые? Раньше люди собирали наклейки от спичечных коробков, фантики от конфет - это было увлечение. Почему то никто не увлекается программированием для самой программы как коллекции фантиков.
Название: Re: HiAsm (Графический Конструктор Программ)
Отправлено: Samovar от 23 Июль 2016, 07:40:31
Цитировать
Блендер манипулирует десятками миллионов поликов только потому, что он написан на этих языках.
Я купил букварь Шилдта так как нашёл его более понятным для стартующего изучение, но следующая книга будет (если будет, разумеется) от создателя языка С++ Бьёрна Страуструпа
Да затык конечно во времени сортировки кучи всех этих данных( вершин, рёбер, граней)...
Не знаю, у меня такая книжка есть (сам не знаю нахрена купил, только в школе ассемблер юзал :) , а потом меня в искусство занесло), может и тебе будет интересна: http://soft.sibnet.ru/soft/21992-assembler--praktikum-2-e-izdanie/ (http://blender-3d.ru/forum/go.php?url=aHR0cDovL3NvZnQuc2libmV0LnJ1L3NvZnQvMjE5OTItYXNzZW1ibGVyLS1wcmFrdGlrdW0tMi1lLWl6ZGFuaWUv)
Название: Re: HiAsm (Графический Конструктор Программ)
Отправлено: Samovar от 23 Июль 2016, 07:47:14

Цитировать
Да, так то оно так. Только непонятно, где же эти просто увлечённые? Раньше люди собирали наклейки от спичечных коробков, фантики от конфет - это было увлечение. Почему то никто не увлекается программированием для самой программы как коллекции фантиков.
Ну почему же... ОСи пишут на ассемблере ) Конечно они могут показаться "игрушечными", но... сам думай, сравнив размер и функциональность  :)
http://ssvarentsov.ru/articles/experience/obzor-kolibrios.html
Сайт: http://kolibrios.org
Название: Re: HiAsm (Графический Конструктор Программ)
Отправлено: LanuHum от 23 Июль 2016, 07:55:36
Цитировать
Блендер манипулирует десятками миллионов поликов только потому, что он написан на этих языках.
Я купил букварь Шилдта так как нашёл его более понятным для стартующего изучение, но следующая книга будет (если будет, разумеется) от создателя языка С++ Бьёрна Страуструпа
Да затык конечно во времени сортировки кучи всех этих данных( вершин, рёбер, граней)...
Не знаю, у меня такая книжка есть (сам не знаю нахрена купил, только в школе ассемблер юзал :) , а потом меня в искусство занесло), может и тебе будет интересна: http://soft.sibnet.ru/soft/21992-assembler--praktikum-2-e-izdanie/ (http://blender-3d.ru/forum/go.php?url=aHR0cDovL3NvZnQuc2libmV0LnJ1L3NvZnQvMjE5OTItYXNzZW1ibGVyLS1wcmFrdGlrdW0tMi1lLWl6ZGFuaWUv)
Мне 50 лет. Чтобы взяться с нуля писать на ассемблере я должен изучить ни только его, но и физику и математику от и до. Кроме этого я должен изучить все доступные и недоступные алгоритмы рейтрейсинга. Не зная английского с рейтрейсингом не разобраться никогда.
Давай лучше на С++ напишем быстрый рейтрейсинг.  Если есть материал , то начинай новую тему и всё по порядку: "Есть у нас фейсы..."
Название: Re: HiAsm (Графический Конструктор Программ)
Отправлено: Samovar от 23 Июль 2016, 08:11:14
Только FreeBasic + Assembler, Си не потяну... уж больно хитрожопый язык :)  в хорошем смысле :)
Название: Re: HiAsm (Графический Конструктор Программ)
Отправлено: LanuHum от 23 Июль 2016, 08:17:03
Только FreeBasic + Assembler, Си не потяну... уж больно хитрожопый язык :)  в хорошем смысле :)
А тебе не нужно тянуть С. Тебе нужно только предоставлять инфу непосредственно по рейтрейсингу шаг за шагом. Ни ссылки, а то, как практически осуществлять шаги. А, я буду разбираться с плюсами в попытках совершить шаг за шагом.
Попытался запустить колибри как рекомендуется в виртуалбоксе - зависло всё, пришлось перезагружать иксы.
Название: Re: HiAsm (Графический Конструктор Программ)
Отправлено: Samovar от 23 Июль 2016, 08:22:17
А вдруг опять поругаемся? :)

Цитировать
Попытался запустить колибри как рекомендуется в виртуалбоксе - зависло всё, пришлось перезагружать иксы.
она под старые процы (компы) х16, х32... скорее всего потому и глючит на х64...
Название: Re: HiAsm (Графический Конструктор Программ)
Отправлено: LanuHum от 23 Июль 2016, 08:26:55
А вдруг опять поругаемся? :)

Цитировать
Попытался запустить колибри как рекомендуется в виртуалбоксе - зависло всё, пришлось перезагружать иксы.
она под старые процы (компы) х16, х32... скорее всего потому и глючит на х64...
Не думаю, что проблема в этом. Виртуалбокс тянет старые оси, я мандриву 2006 устанавливал в нём (32 бита).
Название: Re: HiAsm (Графический Конструктор Программ)
Отправлено: Samovar от 23 Июль 2016, 08:31:11
ну фиг его знает...  ты тему создаёшь? Я тебе ссылку дам на код рейтрейсера на freebasic, сможешь переделать под Cи, если тебе так хочется, но я смысла в этом особого не вижу, кроме самообразования...
есснно, freebasic код я буду пояснять , как ты и хотел...
Название: Re: HiAsm (Графический Конструктор Программ)
Отправлено: LanuHum от 23 Июль 2016, 08:54:13
ну фиг его знает...  ты тему создаёшь? Я тебе ссылку дам на код рейтрейсера на freebasic, сможешь переделать под Cи, если тебе так хочется, но я смысла в этом особого не вижу, кроме самообразования...
есснно, freebasic код я буду пояснять , как ты и хотел...
Смысл - написать рейтрейсер для анимации с глобальной иллюминацией и фотонными картами, подобный Яфе, но, чтоб тянул  сцену Блендера в 20 миллионов фейсов и не использовал файлы для передачи данных из Блендера рендереру. Для такой передачи данных я уже немного разобрался с кодом используя Блендер как сишный модуль Python. Код на С++ вытягивает данные прямо из модуля.
Где предложенный тобой код на фрибейсике? .Если с него можно стартовать, то начну тему.
А колибри я запустил таки. Интересная игрушка.
Название: Re: HiAsm (Графический Конструктор Программ)
Отправлено: Samovar от 23 Июль 2016, 09:03:31
Надеюсь автор не обидится... (не могу найти оригинал на форуме freebasic)
Выкладываю архив:

Название: Re: HiAsm (Графический Конструктор Программ)
Отправлено: sungreen от 23 Июль 2016, 09:32:24
>> чтоб тянул  сцену Блендера в 20 миллионов фейсов и не использовал файлы для передачи данных из Блендера рендереру.
... но ведь файлы то же проецируются в память и если менеджер памяти позволяет, то по факту сцена будет считываться не из файла, а из памяти ...
... опять же виртуальные диски и прочие ухищрения ...
... попытайтесь выявить проблему неэффективности рендера(ов) ...
Название: Re: HiAsm (Графический Конструктор Программ)
Отправлено: Samovar от 23 Июль 2016, 09:39:53
Цитировать
... попытайтесь выявить проблему неэффективности рендера(ов) ...
этого что ли, который я выложил? Дык там нет нихрена поддержки многопоточности... одно ядро... я Ланухумыча давно предупреждал, что нихрена не всё так просто, а очень охрененно сложно, хотя реализуемо... но с другой стороны, а почему не попробовать? :)