-
Posts
2388 -
Joined
-
Last visited
-
Days Won
133
Content Type
Profiles
Forums
Plants Library
Everything posted by Eduard
-
Баг исправлен, спасибо! Странно, в предыдущих версиях макса этого не требовалось, видимо разработчики серьезно взялись за вьюпорт, и все дыры закрыли...
-
script access, get existing growfx object
Eduard replied to scaron's topic in For technical questions
Ok, we've added the following functions: getNumPaths() Returns the number of paths. getNumDistributors <path_index_integer> Returns the number of distributors for the specified path, index are 1-based. getNumModifiers <path_index_integer> Returns the number of modifiers for the specified path, index are 1-based. getNumMeshBuilders <path_index_integer> Returns the number of mesh builders for the specified path, index are 1-based. getNumAfterMeshModifiers <path_index_integer> Returns the number of after mesh modifiers for the specified path, index are 1-based. Now you can try this code: gfx = $ for i = 1 to gfx.getNumPaths() do ( path = gfx.getPath i; format "%\n" (classOf(path)); format " Distributors:\n" for j = 1 to (gfx.getNumDistributors i) do ( distr = gfx.getDistributor i j; format " %\n" (classOf(distr)) ) format " Modifiers:\n" for j = 1 to (gfx.getNumModifiers i) do ( dir = gfx.getModifier i j; format " %\n" (classOf(dir)) ) format " MeshBuilders:\n" for j = 1 to (gfx.getNumMeshBuilders i) do ( mb = gfx.getMeshBuilder i j; format " %\n" (classOf(mb)) ) format " AfterMeshModifiers:\n" for j = 1 to (gfx.getNumAfterMeshModifiers i) do ( amm = gfx.getAfterMeshModifier i j; format " %\n" (classOf(amm)) ) ) Please contact me by email, and I'll send you an update... Thanks! -
script access, get existing growfx object
Eduard replied to scaron's topic in For technical questions
Yes, now we'll add these functions -
script access, get existing growfx object
Eduard replied to scaron's topic in For technical questions
Yes you are right! We'll add these functions... Regarding the arrays, yes we wanted to implement this, but I don't understand how to do it in the Max SDK, because I've not found an example... Thanks! -
script access, get existing growfx object
Eduard replied to scaron's topic in For technical questions
Hi Steven, Yesterday, we added the following functions: getPath <path_index_integer> Returns the indexed path, index are 1-based. getDistributor <path_index_integer> <distributor_index_integer> Returns the indexed distributor for the specified path, indexes are 1-based. getModifier <path_index_integer> <modifier_index_integer> Returns the indexed modifier for the specified path, indexes are 1-based. getMeshBuilder <path_index_integer> <mesh_index_integer> Returns the indexed mesh builder for the specified path, indexes are 1-based. getAfterMeshModifier <path_index_integer> <aftermeshmodifier_index_integer> Returns the indexed after mesh modifier for the specified path, indexes are 1-based. I hope this is the best way to get a components list... What do you think about this? Thanks! -
script access, get existing growfx object
Eduard replied to scaron's topic in For technical questions
You can check the component type as follows: if classOf(gfx.trunk.Meta_mesh_01) == GrowFX_sMESH_Meta do ( ... Here's a list of types for the Mesh builders: GrowFX_sMESH_Cyl GrowFX_sMESH_Meta GrowFX_sMESH_Leafs GrowFX_sMESH_IG GrowFX_sMESH_STDLeafs Cheers! -
script access, get existing growfx object
Eduard replied to scaron's topic in For technical questions
Hi Steven, Yes, some MaxScript functions are not yet available in GrowFX, because few people use it. However, we can add the necessary functions and properties... If you have any more wishes regarding the MaxScript functionality, please let us know, we'll add it. Thanks! -
Hi Shawn, Ok, we'll think how to implement it... Thanks!
-
Orienting all flowers to the same direction
Eduard replied to stevesideas's topic in For technical questions
You can create an Affect from the Trunk->Parameter: Length to the Trunk->Vector_dir_01->Strength. See my example: Sunflowers_2.max I also created growth animation for the trunk length from 100 to 600mm. And the flowers turn to the sun within trunk length from 400 to 600mm, see the Source parameter range values in the Affects rollout. That is, when the trunk length is less than 400mm, the flowers will be directed to random directions. Cheers! -
Hi Midge, It is not always possible. To create a flat end, requires a certain distance from the trunk or parent branch. Otherwise, there may be some artifacts in this area... Cheers
-
Export grow animation to other software?
Eduard replied to suitlm's topic in For technical questions
I'm not sure, but try using the RealFlow plugin for 3ds Max: http://support.nextlimit.com/display/rf2013docs/FAQ+-+Connectivity+Plugins Cheers -
Orienting all flowers to the same direction
Eduard replied to stevesideas's topic in For technical questions
Hi, I wonder why vector direction does not work? Maybe you did something wrong. If possible, please send me your model, I'll try to fix it... In this example you can see how it can be solved: Max file: Sunflowers_1.max (GrowFX ver: 1.9.7) Cheers! -
Please see the help in the Preference parameters: Also see the Density parameter in the Path distributor: That is, avoid using the graph for the Density, because for large values of Subdivs, calculation will be slow. It's desirable to use the graph only for the main branches... Cheers
-
Please set the parameter SubDivs=100000! Your model is still has SubDivs=100. Cheers
-
Please take a look at my adjusted tree: 01_2.max Also note that all Wind modifiers I applied into Direction Modifiers, because if we use them in After Mesh Modifiers, then during the plant growth will be shake of branches. Cheers
-
Hmm, this is very strange... Try the new version GrowFX 1.9.7, maybe it will solve the problem. Yes, you can also render without conversion to Proxy, for installation on a render farm use the GrowFX Rendernode version...
-
Yes, please turn on the Convert to Mesh in the Preference parameters rollout, then you can convert to Vray Proxy... Regarding your growth animation, now I'm trying to adjust your tree to make it look more realistic...
-
In your case, you must set the SubDivs equal to about 50000 (in the Preference parameters rollout), because you're using a graph for Density, in some Path distributors... Also for the trunk2->Deviation_dir_02 need to set Distribution paths equal to "B1->PathDistr_02" instead of "B1->PathDistr_01". Then to increase the calculation speed, you can disable the Density graph for the paths B2, B3, B4 and B5. See these changes in the corrected scene: 01_1.max Cheers
-
И снова рандом с Instanced Geometry
Eduard replied to APEC's topic in [Russian forum] / Для русскоязычных пользователей
Приветствую! Нет, мы ничего там не меняли. Это просто был допущен небольшой баг на фоне улучшения кода обслуживающего списки Listbox. Это нужно было сделать для правильной работы команд Undo/Redo при добавлении/удалении компонентов. В итоге, при добавлении в список Instanced Geometry одинаковых элементов, элемент добавляется в память, но в списке не отображается, собственно поэтому генерится рандомное число появления объектов. Сейчас я уже исправил этот баг, и на этой неделе мы обновим все установочные пакеты. Также попробуем что-нибудь придумать с алгоритмом распределения в Instanced Geometry... Спасибо за подсказку, способствующей поимке этого бага! -
Hi Everyone, GrowFX 1.9.7 has been released. What's new: Added full compatibility with 3ds Max 2015 and 3ds Max Design 2015 (64-bit); Improved viewport performance in 3ds Max 2015; Added a new parameters group called Alarm limits to the Preference parameters. By setting these parameters, you can be sure that your model will not cause a memory overflow; Some minor improvements and bugfixes. How the Alarm limits settings works: This settings controls the basic limits for critical algorithms... Path segs limit Specifies the maximum number of segments for the paths lines, while editing the Length path or Steps on the Direction modifiers rollout. Density limit Specifies the maximum number of distributed lines, while editing the Density parameter in the Path distributor. Distr count limit Specifies the maximum number of distributed lines, while editing the Count parameter in the Distributor in point rollout of some distributor. Mesh segs limit Specifies the maximum number of faces around the circle for the Cylinder mesh. Also specifies the maximum number of faces on the leaf width for the Leaves mesh. Meta verts limit Specifies the maximum number of vertices during the build Meta meshes. If some values exceed the specified limits, the system will display a message recommending change some settings to solve the problem. After that will be automatically enabled the Manual update mode. Please feel free to ask if you have any questions. Thanks!
-
Just Corona renderer calls Object::ConvertToType() function, instead GeomObject::GetRenderMesh(). Of course the best way to call a functions: GeomObject::NumberOfRenderMeshes(), GeomObject::GetMultipleRenderMesh() and GeomObject::GetMultipleRenderMeshTM()... ConvertToType() function is mainly used to convert into Editable mesh. So, for proper rendering in Corona we must turn on the Convert to mesh option... Or Corona developers must change their own code. Cheers
-
I hope we'll release this version in Monday, May 26... Cheers
-
We'll test it, but a little later this or next week... Thanks!
-
И снова рандом с Instanced Geometry
Eduard replied to APEC's topic in [Russian forum] / Для русскоязычных пользователей
Ясно. Ну, такую задачу можно решить и другим способом Если у Вас бутон сделан с помощью GrowFX, то значит наверняка Вы сможете сделать один вариант этого бутона, но который будет иметь анимацию распускания, от закрытой стадии, до открытой поздней. Затем Вы сможете применить параметр Current time, как в уроке GrowFX 1.8.6 - Creating growth animation of some tree, в частности нужно будет только Creating growth animation: Fruits. Саму анимацию роста дерева делать не нужно, нас будет интересовать только разные фазы бутона. Скорости раскрытия и временные интервалы тоже не важны. Делайте хоть всего 4 кадра на открытие бутона (1-бутон закрыт, 2-ранняя стадия, 3-открыт, 4-поздняя). После чего задайте хаотичную длину для верхушек, где эти бутоны будут сидеть, буквально не намного, если не нужно, чтобы этого было заметно. И вообще, можно использовать пути, не имеющие меш-построителей, т.е. dummy-пути, которые используются только для распределения на них бутонов. Теперь создайте влияние от длины этих верхушек в нужном диапазоне (т.е. проследите, чтобы Source parameter range был в том диапазоне, в котором изменяется длина верхушек), на параметр Current time как в уроке. Все, этого должно хватить. Если нужно разное соотношение кол-ва вариантов бутонов, поиграйте графиком коэффициента влияния Factor. Также можно повлиять на длину верхушек от веток нижнего уровня, для придания некоторой формы распускания бутонов, но при этом потребуется уменьшить хаотичность их длины. Т.е. приблизиться к анимации роста всего растения. Но это уже по желанию... Если что-то будет не ясно, пишите... Как ни странно, но не задавали
