Time |
Nick |
Message |
00:01 |
|
neko259 joined #minetest-delta |
00:04 |
|
OWNSyouAll joined #minetest-delta |
00:11 |
Taoki |
For everyone who's interested in the 3D models: I need help from other coders at this point to nail down the remaining 4 issues. If anyone knows and is willing to jump in, that would help a lot and I can get started on a player model soon! See this post for information about the problems: http://minetest.net/forum/viewtopic.php?pid=49316#p49316 |
01:15 |
|
mrtux_ joined #minetest-delta |
03:35 |
|
sreich joined #minetest-delta |
04:36 |
|
sreich left #minetest-delta |
04:51 |
|
Weedy_lappy joined #minetest-delta |
04:51 |
|
Weedy_lappy joined #minetest-delta |
05:38 |
|
LunaVorax joined #minetest-delta |
08:38 |
|
Taoki joined #minetest-delta |
08:38 |
|
SpeedProg joined #minetest-delta |
08:41 |
Taoki |
Hello. I would like to remind everyone interested in the 3D model support that there are 3 remaining issues, plus a feature I could not implement yet. I require help from everyone experienced with the MineTest code and its lua API! If you wish to help, please see this post for what I need help with: http://minetest.net/forum/viewtopic.php?pid=49316#p49316 |
08:50 |
|
Calinou joined #minetest-delta |
09:53 |
Taoki |
If no one can look at the code now, this is my main problem with the attachment system: I need to send over (read / write, or serialize) the reference to an object. On the server, it is a server object. On the client, it is a client object, and I need to get its server object variant if I'm correct. Talking about content_cao and content_sao |
09:55 |
Taoki |
The code can easily find out what the server object I'm addressing is, and parse it as a reference (ServerActiveObject *parent). Problem is what do I do in genericobject.cpp when I need to send that reference to the client (contant_cao.cpp) then figure out what client object represents the player we were addressing on the server, and get its object |
09:56 |
Taoki |
Can anyone good with the code suggest what to do please? |
10:01 |
Taoki |
Basically, I need to "get cao for sao" either in the server or in the client. Anyone know of a function that can do that? |
10:27 |
|
PilzAdam joined #minetest-delta |
11:28 |
|
celeron55 joined #minetest-delta |
11:32 |
thexyz |
i |
11:32 |
thexyz |
why do you need to attach entities to bones (via lua)? |
11:41 |
Taoki |
thexyz: It's a feature of the new model system. It will be used to eg: Have players hold items in their hand |
11:42 |
Taoki |
I think I got it for now. I'm sending the ID of objects as an initialization property, and that seems to work out |
11:44 |
thexyz |
why do you need to make this accessible from lua? i guess holding items is the only use for this and therefore could be implemented in c++ |
11:44 |
thexyz |
that'd be easier |
11:45 |
thexyz |
and items are not entities, you'll also need to create entity for item player's holding |
11:45 |
Taoki |
thexyz: It will have many uses. I want to make it possible for anyone to do anything with it |
11:45 |
Taoki |
sure |
11:45 |
thexyz |
and then synchronize item switching |
11:45 |
thexyz |
(which is not possible with current api, afaik) |
11:46 |
thexyz |
Taoki: i can't think of another use =( can you provide any examples? |
11:47 |
celeron55 |
that is relatively close to putting items in minecarts, riding things and so on |
11:47 |
Taoki |
thexyz: There are many things people might want to use this for. Held items, as well as armor. Then carts will make use of it. You could also make mods to ride on the backs of animals... even other players! |
11:47 |
Taoki |
Yes. The bone parameter will be optional... if none is given you can even attach to non-mesh stuff |
11:48 |
thexyz |
celeron55: but that doesn't require bones |
11:49 |
thexyz |
well, anyway, implement it as you want |
11:49 |
celeron55 |
object id generation should be changed to be unique in a running server instance instead of being unique at a given moment for that though |
11:49 |
Taoki |
thexyz: Bones will be an optional parameter of attaching. If none is given then just attach to object origin |
11:50 |
celeron55 |
or maybe unique in a world |
11:50 |
Taoki |
would be nice |
11:50 |
celeron55 |
(but that is not too simple to implement properly) |
11:50 |
celeron55 |
(eg. what about copying parts of a map to another) |
11:52 |
Taoki |
yeah |
11:53 |
Taoki |
Attachments are normally not persisted between server restarts. Least not something I can implement. LUA has to set them each time, but for now at least that's fine |
12:38 |
Taoki |
Now I'm wondering how I can get an object by ID (->getId) in content_cao.cpp. Anyone know how I can do a for() loop through ClientActiveObject's? |
12:40 |
Taoki |
NVM just found an example |
12:59 |
Taoki |
I hope using m_env->getActiveObject(id) in content_cao.cpp returns the client object of that ID, not the server one. Though it only matters if client objects don't share the same properties as their server counterparts |
13:29 |
|
Calinou joined #minetest-delta |
13:42 |
Taoki |
I'm running into an interesting issue with my model attachments. If I do the attaching on the client, I can attach to skeletal bones (as that's where the model is set), but the server isn't aware the object changed its position. If I do it on the server, it's more consistent and the server is aware of the real location, but I can't get per-bone positions so I can't do skeletal attaching |
13:44 |
Taoki |
The server not being aware has small inconveniences, such as players not actually being moved or punching an item at its attached location not working. Attaching in client slightly feels like a hack... but if I don't it's hard to set position to a bone at a specific animation frame on the mesh |
13:44 |
Taoki |
celeron55: What do you think? |
13:56 |
Taoki |
Ok, I think I know how to fix the issue most gently. setAttachment will attach the entity server-size to another entity. If however a bone is also set, we also modify the visual location client-side (server-side the object stays attached to the origin of its parent, and not offset by the bone). |
14:35 |
|
vals_ joined #minetest-delta |
14:40 |
|
NakedFury joined #minetest-delta |
14:54 |
|
jin_xi joined #minetest-delta |
15:55 |
|
mrtux joined #minetest-delta |
17:30 |
|
LunaVorax joined #minetest-delta |
17:35 |
|
MiJyn joined #minetest-delta |
17:54 |
|
celeron55 joined #minetest-delta |
17:58 |
|
LunaVorax joined #minetest-delta |
18:56 |
|
LunaVorax joined #minetest-delta |
18:57 |
Taoki |
Damn. I just realized that the way I'm applying meshes doesn't work for nodes too, just players and objects. And the code which generated nodes is apparently completely isolated from everything... no scene manager or even a device o.o |
19:07 |
Taoki |
celeron55: Any chance the code could allow me to implement meshes for nodes too and texture them? The current ones don't allow setting anything related to the scene in any way. Obviously for things like model torches and special blocks |
19:08 |
Taoki |
If not, can something else be used to make special nodes look like LUA entities so I can copy from that? But not ugly hacks |
19:09 |
celeron55 |
you need to make a new node visual type that uses a mesh and extract the meshbuffers from the mesh in content_mapblock.cpp |
19:09 |
celeron55 |
or something like that |
19:09 |
celeron55 |
hmm, drawtype they were called |
19:09 |
Taoki |
Problem is that content_mapblock.cpp doesn't have any references to the scene or even the device |
19:10 |
celeron55 |
it's run in an another thread so referencing anything would horribly break everything, so yes, it isn't trivial |
19:11 |
celeron55 |
you need to add a MeshManager that can be read from any thread at any time |
19:11 |
celeron55 |
like TextureSource |
19:11 |
celeron55 |
and NodeDefManager and the like |
19:14 |
Taoki |
Doubt I can do something so advanced. Might have to leave it out for nodes :/ |
19:14 |
Taoki |
No way to assign them LUA entities as draw types perhaps? Doubt though |
19:29 |
|
NakedFury joined #minetest-delta |
19:45 |
|
Mallot1 joined #minetest-delta |
19:46 |
Mallot1 |
hi |
19:46 |
Mallot1 |
hi |
19:49 |
Taoki |
hi |
19:50 |
Mallot1 |
does anyone here know SDL |
20:34 |
Taoki |
sorry, not me |
20:44 |
Taoki |
If any coder good with the C++ code in MineTest is around, I really really need help with finishing the 3D models, and their last remaining issues. I don't know how to do the rest any more, nor have any more energy to keep working on this code without getting anywhere |
21:19 |
Taoki |
celeron55: Since you are the head developer and only user I know who knows the code well, I have to ask if you'd be ok with helping out to finish this code. It's mostly the attachment system which should require a few more lines of code, then some buggy features that should however work. I already added code comments to explain the problems and can explain them here too |
21:19 |
Taoki |
No one who knows the code and / or has time is around, and I dunno what to do with those last issues. |
23:03 |
|
Octupus joined #minetest-delta |
23:03 |
Octupus |
hello |
23:03 |
Octupus |
http://pastebin.com/TCzDj2vg |
23:03 |
Octupus |
can any1 tell me whats wrong with this ,^ |
23:06 |
celeron55 |
wtf is drawtype = "card" |
23:06 |
Octupus |
im making a vendorcard |
23:07 |
Octupus |
for selling things using money mod |
23:07 |
Octupus |
is there any mistakes celeron55 |
23:07 |
celeron55 |
minetest won't draw anything if you don't use a drawtype that it knows |
23:07 |
Octupus |
hmm |
23:08 |
Octupus |
how do i make a drawtype |
23:08 |
celeron55 |
that's C++ stuff |
23:08 |
Octupus |
i took it from rail |
23:08 |
Octupus |
so can i put raillike |
23:10 |
celeron55 |
well, they are listed in the API documentation; you'll probably find some of them suitable |
23:10 |
Octupus |
ok |
23:11 |
Octupus |
any other mistakes in that? |
23:11 |
celeron55 |
maybe browse the mods on the forum and see if some of them has something similar to what you want, and look at their source |
23:12 |
Octupus |
i have tried but realbadangel told to look at nodeboxes |
23:12 |
Octupus |
hm i still get a error after i put in raillike |
23:14 |
Octupus |
i named it as "octu" also |
23:14 |
celeron55 |
oh |
23:15 |
celeron55 |
you're missing a } in there |
23:17 |
Octupus |
o which line? |
23:17 |
Octupus |
if i am correct it is line 1 |
23:18 |
celeron55 |
tiles = {"octu_card_vendor.png", |
23:18 |
celeron55 |
should be |
23:18 |
celeron55 |
tiles = {"octu_card_vendor.png"}, |
23:19 |
Octupus |
ok thanks m doing test 2 now |
23:23 |
Octupus |
YES |
23:23 |
Octupus |
thank your celeron55 |
23:23 |
Octupus |
*you :) |
23:24 |
|
Taoki joined #minetest-delta |
23:25 |
Octupus |
hi taoki i just finished a mod :) |
23:25 |
Taoki |
Octupus: Nice. What is it? |
23:25 |
Octupus |
Vendorcard |
23:26 |
Octupus |
ima bank a bankcard nest |
23:26 |
Octupus |
then a credit card |
23:26 |
Octupus |
:) |