ossia / libossia

A modern C++, cross-environment distributed object model for creative coding and interaction scoring
https://ossia.io
GNU Lesser General Public License v3.0
199 stars 32 forks source link

cleaning up units #90

Open jcelerier opened 7 years ago

jcelerier commented 7 years ago

Currently, the supported dataspaces & units are :

using angle_list = brigand::list<degree, radian>;

using color_list = brigand::list<argb, rgba, rgb, bgr, argb8, hsv, cmy8, xyz 
/*, hsl, cmyk8, yxy, hunter_lab, cie_lab, cie_luv_u*/>;

using distance_list = brigand::list<meter, kilometer, decimeter, centimeter, millimeter, micrometer, nanometer, picometer, inch, foot, mile>;

using gain_list = brigand::list<linear, midigain, decibel, decibel_raw>;

using orientation_list = brigand::list<quaternion, euler, axis>;

using position_list = brigand::list<cartesian_3d, cartesian_2d, spherical, polar, opengl, cylindrical>;

using speed_list = brigand::list<meter_per_second, miles_per_hour, kilometer_per_hour, knot, foot_per_second, foot_per_hour>;

using time_list = brigand::list<second, bark, bpm, cent, frequency, mel, midi_pitch, millisecond, playback_speed>;

My question is :

bltzr commented 6 years ago
bltzr commented 6 years ago

I think a very important unit is missing in the current libossia implementation: Hz the list above mentions "frequency" but it's not showing up anywhere in the implemenations...

jcelerier commented 6 years ago

the list above mentions "frequency" but it's not showing up anywhere in the implemenations...

weird, it's the frequency in hertz

jcelerier commented 6 years ago

what's the need of removing units ?

the less stuff there is, the smaller is the library, and smaller implies faster (it's easier to look up an unit across 20 than across 40)

I don't know what barks are

barks and mel are psychoacoustical divisions of frequencies : https://en.wikipedia.org/wiki/Bark_scale

AFAICT in Jamoma, playback_speed was there to translate e.g. midicents into an actual speed for a sound player (such as sfplay~ or groove~ in Max) - that can be useful...

This sounds a bit like a hack so I'd rather try to think a correct solution for this kind of problems, if it's the problems that are in the scope of ossia. For instance, actually using i-score for doing this. Else we could just start put whatever conversion function under the term "unit".

if there are different ways of expressing polar coordinates, shouldn't we create different "units" for those different modes ??

yes, certainly but I'd rather have only the one that is the default in most environments. Or maybe think of someting like GLSL's swizzling to handle such cases. That is, in GLSL one can write

vector3 myvec;
print(myvec.xyz); // equivalent to print(myvec.x, myvec.y, myvec.z);
print(myvec.zx); // equivalent to print(myvec.z, myvec.x);

but it's hard to implement efficiently (in GLSL it's the compiler which does it; software implementations generally make huge libraries or are quite slow)

the only missing units I saw from Jamoma Dataspace are in the orientation group: xyza and ypr (but I have no idea what they mean whatsoever...)

I was more thinking of units that aren't in Jamoma Dataspace but could be useful.

bltzr commented 6 years ago

This sounds a bit like a hack so I'd rather try to think a correct solution for this kind of problems, if it's the problems that are in the scope of ossia. For instance, actually using i-score for doing this. Else we could just start put whatever conversion function under the term "unit".

yes, let's just remove speed

bltzr commented 6 years ago

I was more thinking of units that aren't in Jamoma Dataspace but could be useful.

I guess that's already pretty complete, isn't it ?

jln- commented 6 years ago

Digging this one up, following the issue I reported here (assuming that the cart2pol conversion was broken):https://github.com/OSSIA/libossia/issues/353

Of course, I'm totally fine having this cartesian to polar the way it currently is in libossia, but from a practical point of view, we (I) seriously miss xyz2aed conversion.

If we really need to decide which type of cartesian to polar conversion instead of various options, I'd strongly vote for xyz 2 aed. (I dont remember having used some spatialization libraries for instance that were using the conversion currently implemented in libossia.)

jln- commented 6 years ago

@bltzr @jcelerier @pchdev @avilleret @matcham

Digging this up again again as I wanted to do a simple position unit demo for Score doc without success...

Could we have back the cartesian/polar conversion the way it is in Jamoma. If not a replacement of the current way it is in libossia, at least as an addition ? FWIW, this is a major missing feature to me. :-(

Do you guys use position unit conversion the way it currently is ?

bltzr commented 6 years ago

so, the problem is that you want to add 90° to the result, that's it ?

if so, then I guess that won't be too hard to change in the code.

The only question then is: 1/ do we change this ? 2/ or do we add a new unit ?

1/ who objects against this ? why ? (yeah, I know, that's maybe not the way in done in math, but if that follows the conventions in other 3D software and such, then I guess we should follow the creative applications conventions, shouldn't we) -> @jcelerier ? 2/ If we add a new unit, how should it be called ? (that's for you @jln- )

bltzr commented 6 years ago

BTW, has anybody already used this conversion at all ?

jln- commented 6 years ago

Well added to my confusion is probably more that the unit conversion is broken on remotes in libossia-max.

Given a position parameter with unit.cart3D, sending a clockwise rotation to a remote with unit spherical, is sent and converted as expected to the parameter but the remote outputs a 90° shift forwarded and anti-clockwise rotation.


----------begin_max5_patcher----------
943.3oc2Ys0aZCCF8Y3WgUTejF4KwIg8zdX+KllpLfaa5HWjioCV09uOeIgR
KAGCA5JSpJAaL93ywG+88kzWFOJXV4Zdc.3KfuCFM5kwiFY5R2wnl1iBxYqm
ujUaFVPNutl8.OXh86j70RS+2BCQznTxT.LDRQwHh5CsiphIm+XVwC2I3ykV
zv3jP3D.BkFRU2Rv5VX0UvOZ9QYKLSb4rmtcZ6DUtRtjKkap31YIHX6vKVkm
Un9RyxD+Zm1ehoWTSu0xMKMSPPfti+Ldr9xjAp.L9B.BbaBJjFSURfh+p+Pw
DLJBfZG9xrB97xUExcWlcnOQ3TshPHwF8IJ1zh1s9DAuFDHkovHMQo6JMN7H
Z5NADEYcJtsHjzqAIPuGFCAXHD55rQDwraiM7OIxIuoel3cA+WpE0dzVa56I
bPCko1sbhSJSNLkmbPZS5j13K518MDvMQfant73wvcNmSSbQbbx0fGe8le+Z
3tNXLEaLzHJQyXxTmL9Sk6lkOKKurHSVJ5eGsgeHqi1bqSFhbaleigtRvq4E
RlLqrnKDwZDwlF5qcqPnNUHxInG2urTMINjBjMIeq4Ft2V88khblYvw6KMnD
mRyLVwC6HMLAKmK4h63ErY1MYn+z+BGGPUL..E5gRkXh7E4LL.5ZHjuxpVwK
V.5KZ.5M0AlF6j33ik3n+4QCZ4meQCPjgGMfRPFqT5z13.eLQC5wHXJO1UE.
jHsB0TsWZpKiP50mOnkdo1pXgvs25rDmgaCL..+TXAJqqyXgBddojCx2bWUY
M3qqTJFP8oL85Nrt5QtHaNaY+GkhPF+M1dT5PVjjiPA8QMNKVkdSXhsmcQlr
.Ga9x3qszk8W+PxzSWNn++IGM4RNI4H5ZSNNT9D1Osu9.2OPYiVQsOqA14CT
dzkUP93qmxFCc6Fy1vn5EK3Y9bx8uOj5blPR9V+RjslKBA5rzqS4QtOE2gYl
Luvf28ZIMDP2+a0t5xUh4sqk1piAuxgE7ZYVgI43NCJwNlN2d7EHbxGDP54.
0CN5W+0NCpTrfKLaAWbjSeiJrEX3f.F4gzpeZftPFcwQdZ2Z8vnL1GJeFbSo
dfC4LfSrG3n4Ldf3P8DGz.wIxSbFptQ7gPjywNT6j31xcVBU50lz4vci847q
9eWxE3.rOP+tjFmqfV9jJpMw3vPxqvT66Nso0YUUOyE0Mi1.hp3mmJMRPxDS
yrBaSSMVAB9yYsimZ5gIT0wHUEwrRXqdXcrsz1f7RkXVrJqQOUH+mw+ENPPh
8.
-----------end_max5_patcher-----------
bltzr commented 6 years ago

OK, so only the output of the remote is wrong, right ?

For this dataspace only ?

jln- commented 6 years ago

Well, not sure what is wrong here. Remote output is wrong in some cases, not in others.

With some other units (e.g speed, time) remotes properly output value when value is sent from parameter but do not output at all when value is sent at the remote input...


----------begin_max5_patcher----------
4307.3oc6c0siqhbD95YdJPVmKm0a+OcmKhRhVonnnnbUTtX2nQXalYXO1fC
fm8b1n8cJOC4IK.ciM3w1T1LMz9Ld0YGOCXfhup5pqtppq5+b+cSlk7kvrId
+Nuez6t69O2e2cUGp7.2Y966lrJ3KyWFjU80lDG9KIy94IOnOUd3WxqN7Zuv
kYg0GNK+qKCqNd8Qh2rJJdYXd0MAYN35f74uDE+7iogyy0DAQPlhdvCqp9fQ
K+Io3289WlqIZQ08sfF9Nrei6dxl7Cd6CSMuLl2l6l7TzxvWCSyhRhKOE9Ay
wCVutwguqwkTBA+bR0Mx+gsGJJVeH51CkF9ZT80y2dzfzhWx7h2vMoZL4KB1
jc2ljEgowahpHE8A+s6qIoc3BpBHDk+T4yp9.2.VJ3ZOuLY9mCWz..taRx5v
3n30ogYgw4A4FRa6oWD9Tvlk4O9TRbdVzuVQck20Cc9mBlGdzKNNXk9U6OlF
Err9kaxyoQKRhKIhV.c4gqeb+nGlWwv4MeYp9FwAqOvEWv3K.kibxrhWxMYy
BRK4Cyzhfj5Slmjrr8o1dcKCeJ2b50Qww6gh4IqO9ISid9kSbsyRJN4pScuq
NS1iah0m8whQZ4OlE7ZazNOX4RyPu129uDDGsJHOLORyBHnsmLLNn3E8kr4o
IKW158UelWOvYVTHBOO7WhVj+R0CpovPwWOZcsPzjsb4EQOGlk29X4AOm09H
uQkPwg1LyLD8w7vUqWV7Vr2W3kjeoP5JXVKRrkJqliRap5p0w2SE15f3vsBo
UJJZL.ogtHFpZTGmqlxePOBD0PJU+.SKF9NOYoVUP43TFUQvhxupOSgHk+Bg
q+M7dW8awj2npD+lGVSY5inDkgYZBmWR3Tlp7unXwdO9FpR4p8nf2pNcq1p8
OVP7ylQZ96DWzpjZALDEBqp.FJRIQL8uUbH7aw00oIqSR2pvZJUUete696q+
kGrM+WCiD8GWe7eBFCl+Kuw+eC+m3WgaJ94v98kLJt5cCy3EumUWDgxIpgi+
SpLdp3gtkuW7AheB1u+GY1uixEoUheBIQy9jUlIwNEWT7AhKtJLKK34vluwa
WLRIYV97jkDbKP4v7JMNk+00FSRmLo06QKVYWpd01nKIZ1kOe+Ev7FlF+3LM
76Hd8zxjhaN.sdbJtjl8wxip1CJJ9f2jYEBVm.MwmFM4TTCZgiNHX9TRZgAv
kWf3HPL53Pba1YZw5XxKLGUaebkT6XvBX9JmgEv7kuGr.70FKPO4uavBz5T5
KKf3FrfVNPZOmHE74hYW0+6L3QbQu4QGm2Pgwazz.lP6TeOcXz2eBXNIKKJX
ZZ3pj7Puf3j7xUfWMKu2eXSbTtW0uO8krWmbYh6U+euE2kUqdkvvcAorSr3E
5fYxAVJjRsEGklMJvDPhvDsQdLKJBCyjEgT6HNEqS7124LYoBE4BgyXxhgVt
Tk0L5017kRjyvBLlrzWV.6pyjEo6vBz5T5KKfe0ZxxPY3g.w.Z3AS3HFdrka
susGk3h2qgyoO0xNjzmmco1gzW4Wg1GLT8HqShtmx55AxFDbwJ28XSEzRiPn
JkhC2HZyzVipEHLEAnEHTlqYAhrZ7Gifb.KPLdLT+wkp6kxuxl9y32J2fEnG
M0WVf35zuUNAKvXDXeYA9Wm9sxMXAZ058kEHupLB7rbcEiKs3rtLXy5pEU.D
pBpxsbc0pud.uVMe0WkioaqXbcvW0L3SZxHZXbaEbcGZ+tIvNfpCdCR4h0bb
04Dkp2Zgh5JL.CobwL.2OjCsTn7ZZxlUFsIYqCCWL8yq99WFGsI5A.lL4PmB
GmT2L10TlTsHNAG4LxxZR4RkkIpqRkIbovUX.FR4hY.xqDkI67ukQeRkesJ3
aA4szsr56yFd+ZoGJnijLQ0Yn0H9iuasPSYRAwmWH+pjXIqz8VJkBwUPs0tZ
RLJkO5d3xPC.7vEw4RKHogl4NiGtLzxEqPAc04gKh6vBnn2CV.95LLmNAKv3
gq9xBHWmg4zMXADw6AKf9MoGtzrIAcz8vkgF.3gKB6JvCWoOOKXL8vEQYvQR
WvIVM9IlUg75wMfbLRMbr.ZTNwRmyFP8txU3Ll.x50RJwWew3D4LLfljxEy.
tVivIyYL+qmLfqujbS3Ji.ZQJWLC3p11ugxBNsuG.X.Gl3bI41Na3pyuMV67
aKXDSvMrdmBSIcirngwSfmgl.83NmIZkFR4R0Db8koIUZ+PLWA+Mjxkh+xqq
XUNurbu70QL1jLcw4A2crIUNVnIwTsy38kthnKk2u3reko5.qSqZhzYzcS38
K1jWi5NLFgTV3fllENOIdwHpMo1oRXUWZSDtl1D8FTD6SbEgYLyuWaTXWUax
.CixdYNA6pKaEp0J7lzUnRCwpwJYELKQg324dvAOLqPIHOOcSz66xfahDk2+
paVI3O4zPjR6CHr1TriHq1bhpAZSf4dXDWJAhQTzGOLxrMBMaGc.fDCedfzt
Z63xn3iU99pHrxyeXzKKYS57ZPntVJ30lDWDlkGEusTW9i6pP.keQPbuykJp
t4X.TQYo9o7KZEpnr7d.BKpAM6PE3ygJrFVfNGpfXK4BAToShMkNgJWTVUGr
FGgAdjpvlbD14PEVCK3mCUXM4BDPsVk60VqgEkaoHXXAxlXA1EnBJT4hJPiZ
KpPbNTgsFoVtuKgSEVS5TdNTg0jKfJcRs4L6TnyiTStVgJHP4HDeaREPkNIV
Ut.4DXAT8E1DJvJfSlQroI3DnlWfsIVPfZpUM4ZGpfbNTg03H3ygJr0jYDz4
PE1ZhcLTp.KsHGAC0HmxL4vdXg3bnBaIWfYmCUXMNB8bnBqoAGp9BrMMAG5p
Qr4DpRGX9TvqAvlyf.jFr4hjA6MKat3TnCLNJMXNXcaEZRYykYwi5FoyikdI
NZ1lbsOYaPLmWCe44kIyBVZZmKaaGPmp6urqEwb+N5s5mZTqWMip0IYQUDdu
aHUXcUkZJhKDL7CdBxIaIUhasjpasjpasjpasjpyKVfWK8jDLgfaTXR7qqf.
rSDNUxGntRxHlzJXotNGzyhlD9V5+fkR+xROuj+MwdqAZVA9TZX3+tYJ+TLI
vmadYkFsNOYSb99uACVtBtUFW4qSzMcMd7D8DILd72BpYg4deWT7SC5tMEaZ
bBRwo1a5NQM0c3FXi45YuneSTW4NkLGSNvRaTptuWgfIsQFn1fxmyVFUZZCf
73knK+z9Zhmp2j.kIl+kjKuQEZIeP+QO.UcRQ2AEAbGi+AYxaEpJCx66b292
.RMP5KkeKrCugqGXWAKzETAX59nlYwAnBPbkaz4pnEQwEmYT1KJ0ZbMlYBX2
nvGFyKOiz32fnGNK9e4WG7r3uVgLw3uvNSieGnSZDDtvC68Ibgd.uOQFVKov
5dlSYWmtbMn9cuwrGHC2OEf8ku9qZ.6SDOzvhW9XMDgkU3U2EkHDc7wqwT.y
zaZ4zpOfHfgGe.6STuOwGkAhX8Ja5tMDp3tALwFkwevgoAZKHMOY0pv37CBS
zIWtuxaF4otLmPnLUl.8jdH8Tfp2XD8tXcQZ6m6lF1chsQOZnvsodd+sjWC8
padnqlEsJov5hjTu+7+3u7Sw+T7u2amoHET35M4dQYd+8+p9blqa2ITn+2+0
K6knmx8JVKwuDjtvKHdQw2qLtmgKNp6G8ubF3gXTJjtmI4a5EF5szKBcbwXe
z3yNHCjXLEus6Vw6qXrO1AvsoGUJVKlNKI+Eul8otE0e21hrfDUYuuhpTgtv
qUHwx2JpJNkjJYXP7SrFkhkgrnxaDMN4KQKVzNV4mw7U8zOvDtY3NsDCEc5s
RepiXh86F.1GuRxMU9GcUToykH6O9EUUWS9SZvN8zM.j+9XZZooFoxz4bU2l
V5OPMl5FSX.IvBlERTxsql9TaK3duF1vaVaevUp47MAS3D32.0H0uL7ivDiC
9QXJX3mDM5dCr.CWGVXUxals38s1BbPCSzN5yTXXkcVVvjXmbzZ8qg+V4rAR
Za6CltC+J+4QwOhi364cEq70IYTi6lqy.2oyCRyI+v33N+5IPL0ZaVm1pHoN
m+72Bq0kOTxS6CwqSVFjN3N1eqCxL8a3taR1RlKzMgDJZw+48cnoXoPH7GXu
u1xc0lpF1IAM9GRuuZbqHSHgY6mTbaIZ6u9BiOB5dIZR2zvYiL.0enM7a6CF
pgetogy0gFiiFG7ivAtvCExIwOI0z3BICrof0gnShgYJnxIMEj8tZmx6hDIG
YVQW2goxUsDjcJKA6mw18FdwRSaNryfJqFHSAcfn.5ahdhtD60yf.5eKHf1J
HfJsBdpYUM.hAnf+gIFfTcJyyvh9GBPA6VH.6ifpov0SURfQ.TPGe.Ga.78z
VL0.2+oVvcVsxgfzPumJPxo5uU4zazenAinVkR15WBSilGrrw49moIsi3SKV
h78MprZkE3JFh.ustEezzF0AziiGHMGZrgx5uhCt3VjraCtDQCAutiiH+Vbr
2G5zsxstcQB+VTr2G.8M1KofI7wT2D91C6XlzNqaoOzMou1HnjvZXsN.oOoq
j02nol+gGTOpS068Ut1.ddmwcf46JaqfwEvjbn.lvQRRmAOVMl1yn12Z7N88
Ci+AEnLBQvAJlSFVFhdVKIYfipfQLSaqqVs+I7INi3.MebLYJgoPDpVClfRk
CbWGmnQMBFALdyXzG0QmXcZFxkvFchUt3nSk1QcXtXTFcZVMP2g7i3N4JWkY
YCatx0ZPor6sDqSNQfPIGSQMBiCTTS7ANsLoDcfOIBXYkIQ5hhZRTEulI4Ca
j3qQOgBVf3IJWLP7jCElX53jSl0yxpP.SISJxQCDOYWf3ouIP7aCHwvGKdiY
xlfDAnve4O9Yk42UXab4+4WV4U3U4mIZ5fZ8mIWeLkcA.1Iq9fZlruFnXBFL
yjI92b669NsTG41tc6Kg6hSFa1ApX9.6..ijG0Gpce3Ov1842ReV218gItnn
FWuZVpTMr18UidP24WX5G3UyJ4zlETlt2FHtnj1tx91vIkUCbPSyWpKt3h2c
KeeOF3x0tnlv4ctmgczUWbpEWzuku0Wrsd+dQQ2ZH6Gnj+PY5JTMzVxNyAZj
1v6JW1r4NVcygzE+vLGne6Xyd9CVddDQSg75N4.xJTFk5.vC3FkqM6sfbfBq
Vs+TAsQcQbfF0E1lcMME31PpM0cnfJYJsJU.UEl7sxvVV8AXRqpJcdLUaX6P
aTnS+fr4rfRn59k1TyhDZKN9.jaCmqYGZC7Xca1eBkvEks4fcIToVoUEZg1o
DkDGn0YZSwBeIP9guMmNzG7vWqhEfmNzevUh3Cc3q+vqfyGpQ1G3kv5zFT0M
1z9en7NFYvwGN3EHM77NN3FQNZvoMFzduLeDnMnSrP3COsAdwv1b9FV+6Rwu
CDAAntoCrXQKutGFzEIq3NKowdqp+CGFcKuNMvr4xMjgyPvfP3Sv7IiLVxFZ
RiB0DVBan8T.XRqLW5GVGrPQ.YnDaZfFA7DlJaREPYS1blQBz4mI3A21ABzY
sI1zUSDn9NfXU9DzANXaJxhgZELE4BgehPOt9M6HxhAGsAa5Xistzq6kAaU9
DB5hMU1kLfNBVYSu+AlHF54jgRXGP19jilL3XAIdu9AG7Z3hGKtSgyyerLoE
hlsIWmh.MHwxG97zn00O7soHwjEQOWPWsO1yKSlErr5MNLMNXU6rp3.IZwj7
fm0okwj62QuU+zj7BSBVutrdIYd9Uz0jUA+bR51Z50jUQw5+jV8moguFU+84
UGIHc9KQ4EunaR0O+uXppTSVkT.YwahLnVwS92t++CrL9odF
-----------end_max5_patcher-----------
thibaudk commented 4 years ago

Hi all,

Experimenting with this, the current version is the retro-compatible one, ie. polar and spherical both present the radius last in the array, with azimuth and elevation in degrees. As i mentioned on the forum http://forum.ossia.io/t/conversion-units/162

If changes could be done (I can give it a shot), the current version could be renamed "aer" as @jln- caled it ("ae" only for the current polar) with 90 degrees added to the azimuth. returning for an "wyz" position of [0, 1, 0] an "aer" position of [0, 0, 1].

More traditional Polar and Cartesian units could then be implemented with rho, theta and phi in this order and angles in radiant. returning for the same "xyz" position of [0, 1, 0] a "spherical" position of [1, 1.57..., 0]

vincentgoudard commented 3 years ago

Since this thread is referenced in the "release-critical" just leaving a note here to mention #579 where I made a proposal on units. If this is too much of a change, at least not rejecting unkown units would be a good start...

thibaudk commented 2 years ago

@jln- and anyone else who would like to test, we now have "proper" polar and spherical coordinates since dd286e7a4445b9c129fb9bca6907e5941c225bd5. AED, AD and ADZ units represent Azimuth expressed in degrees, initialized at x=0, and incremented clockwise. I would very much appreciate some feedback ! cheers

jln- commented 2 years ago

Thanks @thibaudk !

Unfortunately, testing here using latest automatic build, it does not seem to work. See attached patch below. Remote on the left should output the same value as the ambimonitor object on the right.


----------begin_max5_patcher----------
807.3ocyW1saaBCE.9ZxSgEpWlh3XCTXWsos8TLUU4.dsTErQfoKYU8ce9Gn
MokzRhYU4hDGbL9b9N97mebgm+JwFVqO5Kneg77dbgmmYJ8Dd8O64WQ2jul1
ZVletnphwk9Ks+mjsQZl+6B9Crl1RAGUH3LzpsnFVkPxz+Y+h4cUk70LoYmf
WlTzIGlMre1xBytJVc+kj3g2ulJyuqje6MMrboUoSxhBBWhhtBqGfrX8.NLH
Dcs9cdZwB8WKmHbUr1V5sr2.GkUf.zkgAoIoo.JLP+6vnHHMdT1vixFLBaIC
uuccxs0LKX99nq+XrsC3T6.9Dwly9iRYdC00MrZFu.Yn+HNCGiyvSiyqhRLj
kPBhWhRSbBSZ0pxJAuTJZNBZHiPCbXZV1+YJTkkpoBhMNslg473Sz1VRC5CB
q1dSsnE80NE9H0uJkpH0fu8ye3nk.6lkn2OFS.6P3+S+3Ma+qq9w3zSyONND
NC8iwYtc5MP0mteriXG6F1QQY63zBXhSmlGQA0cN3ctpJN5cpp9YVTEBIAPV
XBXpqpKwlkQHuDnphdaU1GpNg0MqK4rbQGW9pprmPoWLbZgxyZk2CYatfftH
BcgicWfCcAQH6J8fMpdtyIuVPKzvOGIkgojT9txhBFe2cXDvww1DZfNeVFbd
jkFbraidOUXVxQeHGVcuwQIYoltjgrzXS3ratuYml2KzCrsVKXShcF2SAfcI
J8LqkBfLKNqeFcTTSanULIq44li0JK5AVN42utQ4bZijbL8JiGwz79VlIXUr
MbPvoidVa1.ecExWcgdyFpmeeKUqnqIePEFtjFJ7Y8nf0JK4l5t6tH0MVUks
ObZUQSAqwzzwnGXSVYv6ImCnL8ZraRZRXC6snmgDbRzvDjb1d1gYx5NEAqyK
M+Himh0FlgiUcW9enCj99btKozIfj9tVNKIc10OVRvghPcS1vTrmyQ.ILE6I
ruK7rQIdJxl7FJsIeo0082YyHFsPTEjtWXhaRWZdrjaezTgvug8P4v5M2Rym
1nx9KUo96ZLJl+lD6U07qDpHPdWYOkJ7ThzTriqJj0VSsjXpIt3oE+i6iTfo
-----------end_max5_patcher-----------

(Pinging @matcham as well.)

matcham commented 2 years ago

position.openGL is broken in latest build.

in a remote : conversion from cart3D is wrong and crash when setting a parameter @unit openGL


----------begin_max5_patcher----------
811.3oc2W00aaBCE84To9evhmSQXvPf8zdXRSZZ+CllhbINIzA1HaSWRq1+8
YeMzR9njOZZ6zjZED6q84dNbtWLOd8Ui7tUrho7PeB8CznQOZFYDLlcjQcCL
xqhtJujpf.8xEUULt1ab6jZ1JMLghUxx0HQMi+0uiJ3H8xBExDaiY1bIUs7o
0TVvY4hFNrvvtQ4MUhFcISC.EzMbwLX6E2d2MYOsC0Tc9xB9hoRClNBPHD+f
wnvf.6EbLbIxLF5m8Pnf2A.FF7OWek8p4x3WuD7f2wykICwkv.fK3zI.kRbD
68jJqOApjLDUvjfOXpr5DnR7PTYR5GLSTKEMkyPFNT2nQqPOfNkGSQC53HQV
9PBy5U87lvt4kByN0KWjzJllImx3zaKYaj8aRpv8PJxylOWj500LGk77Fi7t
kxW38LG1mAMKD3JFXdKwC6S74BYEEhN4easf7p0hnj+WzhvWqV3p1+PjhJlR
QWv1sAPfOgftIvOLAcC1mD8BU+38U8mNffLnPj01Y.rF3vI6pDaP6vyl1b1u
MY5trVnTETeIqRnYnp0SilUKTE5BAG84FdQ2YNdAwHZehQ7vtC3+AEkTLb7h
r.+XiZDmc.QAewEkZ5uPA9t+NEa.4bsAotRfXnaINBe.FG8FYCdpuv1NAKQP
2yxil25J5lxOmJ0Qe4jN849ZoDcfW0bTxWJALLDvvX619RFltQyEkBoaKB7w
gwjrwlaljkDLI0dWZFAiM2gsa0Yq4TsV1TbHejMJHbq95sGIBetlqnT2Kdhx
.4II4DqmbgAOZ296Y.zrSrE+UhFYdW10l7nd3MiozEbp0A0KHqI.MnRez3YK
EeWAjjbT.ZSqvKCfjiFP7kAvviFvKzyvXWte..S2KCaMsz556YRU6RbXYpNu
yU1mN186Bt62tNSdR18EcKwcrHOpzTUoMkTMRl6CeRZa16UIlwjbSAdaoiks
VnU50k6TvvM8Wg0+MZknhNcYwBiVrXolMapPZN2T2ASLrcNsoTukHQyyMe8R
u9VvqJfWT59Tv9cpF2I3RyZfzAftCgJy1CYcvlZFz4xlnpZp6ABzg65qLg7W
Acxu6C
-----------end_max5_patcher-----------
thibaudk commented 2 years ago

ok thanks I'll test that, and we'll discuss it with @jln- today

thibaudk commented 2 years ago

@jln- and @matcham if you have a moment to test the fix, you can find it here https://dev.azure.com/ossia/libossia/_build/results?buildId=2020&view=artifacts&pathAsName=false&type=publishedArtifacts

Thanks !

jln- commented 2 years ago

Thanks Thibaud. Unfortunately, it seems the build only contains the max patches and all but no externals and libs Le 11 sept. 2021 à 01:44 +0200, Thibaud Keller @.***>, a écrit :

@jln- and @matcham if you have a moment to test the fix, you can find it here https://dev.azure.com/ossia/libossia/_build/results?buildId=2020&view=artifacts&pathAsName=false&type=publishedArtifacts Thanks ! — You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or unsubscribe. Triage notifications on the go with GitHub Mobile for iOS or Android.

thibaudk commented 2 years ago

Hi @jln- and @matcham You can find the latest full version for ossia-max here https://github.com/ossia/libossia/releases/tag/latest-ci-build thanks to the latest fix by @jcelerier

jln- commented 2 years ago

Sorry for the delay & thanks ! aed/xyz conversions seems to be fine !

One minor issue is that position.xyz & position.aed do not get displayed in Max's attrui object. But setting it in the object box works fine.

Regarding position.openGL, I am not totally sure what is expected. @matcham: wanna check that one ?

matcham commented 2 years ago

sorry for late reply... position.openGL seems to work as expected in latest build : cart3D x y z --> openGL x z -y

thibaudk commented 2 years ago

Cool thanks for the feedback, so the only thing remaining is to add it in the attrui object. Thanks for the feedback