[Tool] Flummery v0.3.7.5

The 2016 reincarnation of Carmageddon! Discuss, mod and troubleshoot!
User avatar
Errol
Toxic Ranger
Posts: 1160
Joined: Wed Apr 05, 2000 12:16 pm
Location: Sunny Wales

[Tool] Flummery v0.3.7.5

Post by Errol »

To quote the opening post...

Errol wrote:When exporting from Blender please ensure you use these export settings:

You shouldn't need to remake the model, just use those settings when exporting. If you'd like, upload the .blend somewhere and drop me a PM with the link and I can take a look.
User avatar
Mechatron
mechanic
Posts: 27
Joined: Fri Aug 15, 2014 2:49 am

[Tool] Flummery v0.3.7.5

Post by Mechatron »

Cool. The model works in Flummery now. Thanks for the help!
User avatar
Errol
Toxic Ranger
Posts: 1160
Joined: Wed Apr 05, 2000 12:16 pm
Location: Sunny Wales

[Tool] Flummery v0.3.7.5

Post by Errol »

Just a note that v0.3.7.5 packages .ZAD files with .IMG textures. You'll need to manually rename the .ZAD to .ZIP when running the latest patch for C:R.

I'll get a new Flummery version out as soon as possible so this manual fix is no longer necessary.
User avatar
lemonrev
road raged psycho
Posts: 1537
Joined: Mon Jun 11, 2012 10:31 am

[Tool] Flummery v0.3.7.5

Post by lemonrev »

I was going to come in here and tell ya now you going to have to update but you got here before me :P
User avatar
lemonrev
road raged psycho
Posts: 1537
Joined: Mon Jun 11, 2012 10:31 am

[Tool] Flummery v0.3.7.5

Post by lemonrev »

I was going to come in here and tell ya now you going to have to update but you got here before me :P
User avatar
starbuck
kill boss
Posts: 1604
Joined: Wed Jan 21, 2004 12:26 pm

[Tool] Flummery v0.3.7.5

Post by starbuck »

lemonrev wrote:I was going to come in here and tell ya now you going to have to update but you got here before me :P
good thing you did it twice :)
User avatar
coffeycup
Genesis
Posts: 4811
Joined: Sun Sep 27, 1998 6:00 pm

[Tool] Flummery v0.3.7.5

Post by coffeycup »

I had a bunch of objects in the BeerWagon that weren't named very well i.e Mesh01, etc. I've gone back and renamed a bunch. What's the best way to get the Structure.xml regenerated? If I do "Save For" the paperwork isn't updated. Should I do a "Save As" again instead? Or delete Structure.xml and do "Save For"?
User avatar
AlexTSK
mindless
Posts: 2858
Joined: Sun Dec 18, 2011 1:12 pm
Location: South Africa

[Tool] Flummery v0.3.7.5

Post by AlexTSK »

Delete the previously generated structure.xml as Flummery will not overwrite files that are already in a folder, and make sure you are doing it as "Save For"
User avatar
coffeycup
Genesis
Posts: 4811
Joined: Sun Sep 27, 1998 6:00 pm

[Tool] Flummery v0.3.7.5

Post by coffeycup »

I deleted Structure.xml and did a "Save For" and but Structure.xml did not get regenerated.

So I retrieved my old one from the Recycle bin so I didn't lose it.
User avatar
Errol
Toxic Ranger
Posts: 1160
Joined: Wed Apr 05, 2000 12:16 pm
Location: Sunny Wales

[Tool] Flummery v0.3.7.5

Post by Errol »

Delete the structure.xml, Save as Vehicle to the same folder again, it'll regenerate anything that is missing.
User avatar
pileup
turbo bastard
Posts: 256
Joined: Wed Aug 20, 2008 11:29 am

[Tool] Flummery v0.3.7.5

Post by pileup »

Decided to try my dumbass hand at it, made a cheapmobile in blender, it shows up in the selection screen as visible (with issues of wheel placement) but in game it's completely invisible wheels and all. (made it in blender) Any ideas what i messed up?

I also attempted to put a UV mapped texture onto the model but when imported into flummery it didn't show. And the wheel offsets were imported but for some

reason in game in the car selection screen, they're leaning sideways... And in game everything is invisible. Would there be any tutorial on how to make / setup a car in blender? even if it's on a cube people will get the idea as it seems i don't have it yet XD

spending hours in a call with alex gave me a good idea how to fix most of this but i still came up empty handed somehow.
User avatar
KiLLerBoy_001
driver
Posts: 55
Joined: Mon Aug 31, 2015 7:17 pm

[Tool] Flummery v0.3.7.5

Post by KiLLerBoy_001 »

Nice tool though 1 thing bothers me .

i Cant seems to work with decimals when doing part placements

if i type 0.5 and press ENTER it changes to 5 and moves it WAY to much this should be fixed
User avatar
Errol
Toxic Ranger
Posts: 1160
Joined: Wed Apr 05, 2000 12:16 pm
Location: Sunny Wales

[Tool] Flummery v0.3.7.5

Post by Errol »

This could relate to a localisation issue that has been fixed in the next release.
User avatar
KiLLerBoy_001
driver
Posts: 55
Joined: Mon Aug 31, 2015 7:17 pm

[Tool] Flummery v0.3.7.5

Post by KiLLerBoy_001 »

ah yes windows decimal splitter

i had a share of issues with that and my gta5 tool back in the day ill check it out far ya

EDIT

Yep after setting the decimal splitter to DOT instead of Comma in my localization settings and restarting flummery all is fine
User avatar
Errol
Toxic Ranger
Posts: 1160
Joined: Wed Apr 05, 2000 12:16 pm
Location: Sunny Wales

[Tool] Flummery v0.3.7.5

Post by Errol »

Neat! Thanks for verifying. I'll try and get v0.3.8.0 out the door this weekend as it brings a raft of fixes, support for the latest C:R build as well as some fancy new features. Also, a massive speed improvement when saving TDX files as I'm using the new .NET 4.6 SIMD functionality.
User avatar
KiLLerBoy_001
driver
Posts: 55
Joined: Mon Aug 31, 2015 7:17 pm

[Tool] Flummery v0.3.7.5

Post by KiLLerBoy_001 »

also wanted to let you know i cant resave the Tez_Eagle at this time it errors out op saving paint

Error is in the spoiler


Spoiler:




System.NullReferenceException: De objectverwijzing is niet op een exemplaar van een object ingesteld.
bij Flummery.ContentPipeline.Stainless.TDXExporter.Export(Asset asset, String path)
bij Flummery.frmSaveAsVehicle.btnOK_Click(Object sender, EventArgs e)
bij System.Windows.Forms.Control.OnClick(EventArgs e)
bij System.Windows.Forms.Button.OnClick(EventArgs e)
bij System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
bij System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
bij System.Windows.Forms.Control.WndProc(Message& m)
bij System.Windows.Forms.ButtonBase.WndProc(Message& m)
bij System.Windows.Forms.Button.WndProc(Message& m)
bij System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** Geladen assembly's **************
mscorlib
Assembly-versie: 4.0.0.0
Win32-versie: 4.6.96.0 built by: NETFXREL2STAGE
CodeBase: file:///C:/Windows/Microsoft.NET/Framework64/v4.0.30319/mscorlib.dll
----------------------------------------
Flummery
Assembly-versie: 1.0.0.0
Win32-versie: 1.0.0.0
CodeBase: file:///D:/Users/Laurens/Desktop/Carma%20modding/Flummery.v0.3.7.5/Flummery.exe
----------------------------------------
System.Core
Assembly-versie: 4.0.0.0
Win32-versie: 4.6.79.0 built by: NETFXREL2
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
----------------------------------------
System
Assembly-versie: 4.0.0.0
Win32-versie: 4.6.79.0 built by: NETFXREL2
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Windows.Forms
Assembly-versie: 4.0.0.0
Win32-versie: 4.6.79.0 built by: NETFXREL2
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System.Drawing
Assembly-versie: 4.0.0.0
Win32-versie: 4.6.79.0 built by: NETFXREL2
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
WeifenLuo.WinFormsUI.Docking
Assembly-versie: 2.9.0.0
Win32-versie: 1.0.0.0
CodeBase: file:///D:/Users/Laurens/Desktop/Carma%20modding/Flummery.v0.3.7.5/Flummery.exe
----------------------------------------
System.Configuration
Assembly-versie: 4.0.0.0
Win32-versie: 4.6.79.0 built by: NETFXREL2
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
System.Xml
Assembly-versie: 4.0.0.0
Win32-versie: 4.6.79.0 built by: NETFXREL2
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
System.Windows.Forms.resources
Assembly-versie: 4.0.0.0
Win32-versie: 4.6.79.0 built by: NETFXREL2
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms.resources/v4.0_4.0.0.0_nl_b77a5c561934e089/System.Windows.Forms.resources.dll
----------------------------------------
OpenTK
Assembly-versie: 1.1.0.0
Win32-versie: 1.0.0.0
CodeBase: file:///D:/Users/Laurens/Desktop/Carma%20modding/Flummery.v0.3.7.5/Flummery.exe
----------------------------------------
ToxicRagers
Assembly-versie: 1.0.0.0
Win32-versie: 1.0.0.0
CodeBase: file:///D:/Users/Laurens/Desktop/Carma%20modding/Flummery.v0.3.7.5/Flummery.exe
----------------------------------------
OpenTK.GLControl
Assembly-versie: 1.1.0.0
Win32-versie: 1.0.0.0
CodeBase: file:///D:/Users/Laurens/Desktop/Carma%20modding/Flummery.v0.3.7.5/Flummery.exe
----------------------------------------
mscorlib.resources
Assembly-versie: 4.0.0.0
Win32-versie: 4.6.79.0 built by: NETFXREL2
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/mscorlib.resources/v4.0_4.0.0.0_nl_b77a5c561934e089/mscorlib.resources.dll
----------------------------------------
Newtonsoft.Json
Assembly-versie: 6.0.0.0
Win32-versie: 1.0.0.0
CodeBase: file:///D:/Users/Laurens/Desktop/Carma%20modding/Flummery.v0.3.7.5/Flummery.exe
----------------------------------------
System.Numerics
Assembly-versie: 4.0.0.0
Win32-versie: 4.6.79.0 built by: NETFXREL2
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Numerics/v4.0_4.0.0.0__b77a5c561934e089/System.Numerics.dll
----------------------------------------
System.ComponentModel.DataAnnotations
Assembly-versie: 4.0.0.0
Win32-versie: 4.6.79.0
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.ComponentModel.DataAnnotations/v4.0_4.0.0.0__31bf3856ad364e35/System.ComponentModel.DataAnnotations.dll
----------------------------------------
System.Runtime.Serialization
Assembly-versie: 4.0.0.0
Win32-versie: 4.6.79.0 built by: NETFXREL2
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Runtime.Serialization/v4.0_4.0.0.0__b77a5c561934e089/System.Runtime.Serialization.dll
----------------------------------------
System.Xml.Linq
Assembly-versie: 4.0.0.0
Win32-versie: 4.6.79.0 built by: NETFXREL2
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Xml.Linq/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.Linq.dll
----------------------------------------
System.Data
Assembly-versie: 4.0.0.0
Win32-versie: 4.6.79.0 built by: NETFXREL2
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_64/System.Data/v4.0_4.0.0.0__b77a5c561934e089/System.Data.dll
----------------------------------------
LibSquishNet
Assembly-versie: 1.0.0.0
Win32-versie: 1.0.0.0
CodeBase: file:///D:/Users/Laurens/Desktop/Carma%20modding/Flummery.v0.3.7.5/Flummery.exe
----------------------------------------
unluacNet
Assembly-versie: 1.0.0.0
Win32-versie: 1.0.0.0
CodeBase: file:///D:/Users/Laurens/Desktop/Carma%20modding/Flummery.v0.3.7.5/Flummery.exe
----------------------------------------

************** JIT-foutopsporing **************
Als u JIT-foutopsporing wilt inschakelen, moet in het configuratiebestand voor deze
toepassing of computer (machine.config) de waarde
jitDebugging in het gedeelte system.windows.forms zijn ingesteld.
De toepassing moet ook zijn gecompileerd terwijl foutopsporing
was ingeschakeld.

Bijvoorbeeld:





Wanneer JIT-foutopsporing is ingeschakeld, worden onverwerkte uitzonderingen
naar het JIT-foutopsporingsprogramma gestuurd dat op de computer is geregistreerd
en worden niet door dit dialoogvenster verwerkt.




Seems to happen if an material has more then 1 image ( normal map / Bump map /etc )

-------------------------------------------------------------------------------------------------------------------------

• When Renaming a part , pleas make it so the current name of the part is in the entry box not a empty one.

• Make it generate a "vfx_anchors.lol" if there are parts with "VFX_Exhaust...." in the name

Example of "vfx_anchors.lol"

Replace

id = "attach_point_{Random number}", with id = "attach_point_61", or id = "attach_point_62", etc

lump_name = "{Part Name}", with lump_name = "VFX_Exhaust_FR", or lump_name = "VFX_Exhaust_RL", etc


module((...), vfx_anchors_definition)
tags = {
{
id = "Exhaust",
{
id = "attach_point_{Random number}",
lump_name = "{Part Name}",
offset = {
0,
0,
0
},
angle = {
0,
0,
0
},
scale = {
1,
1,
1
}
},
{
id = "attach_point_{Random number}",
lump_name = "{Part Name}",
offset = {
0,
0,
0
},
angle = {
0,
0,
0
},
scale = {
1,
1,
1
}
}
}
}

if theyre are multiple you just generate more in this file

then also make sure to place


[attachment]
ExhaustParticles
vfx effects.f_exhaustsmoke01
underwater_vfx effects.f_underwaterexhaust
anchor Exhaust
in "vehicle_setup.cfg"

hell you could even make the "VFX_Exhaust....." parts have a flag and make a combo for the for one of the following choices


f_exhaustsmoke01
f_exhaustsmoke02
f_exhaustsmoke03
f_exhaustsmoke04
f_exhaustsmoke05
f_exhaustsmoke06
exhaust01
exhaust02
exhaust03
exhaust04
exhaust05
f_diesel_exhaustsmoke02
f_diesel_exhaustsmoke03
f_diesel_exhaustsmoke04
f_yankv8_exhaustsmoke01
f_yankv8_exhaustsmoke02
f_yankv8_exhaustsmoke03
f_yankv8_exhaustsmoke04
f_yankv8_exhaustsmoke05
that in turn alters the "vfx effects.f_exhaustsmoke01" entry created in "vehicle_setup.cfg"
User avatar
Errol
Toxic Ranger
Posts: 1160
Joined: Wed Apr 05, 2000 12:16 pm
Location: Sunny Wales

[Tool] Flummery v0.3.7.5

Post by Errol »

Proper VFX support is coming in a later version as I want it to be UI driven rather than name driven. The biggest hurdle is parsing the .lol back in to populate the UI properly as Flummery only recently gained native lol support.

It'll come, just probably not any time soon given that it is so easy to do manually.
User avatar
KiLLerBoy_001
driver
Posts: 55
Joined: Mon Aug 31, 2015 7:17 pm

[Tool] Flummery v0.3.7.5

Post by KiLLerBoy_001 »

Errol wrote:Proper VFX support is coming in a later version as I want it to be UI driven rather than name driven. The biggest hurdle is parsing the .lol back in to populate the UI properly as Flummery only recently gained native lol support.

It'll come, just probably not any time soon given that it is so easy to do manually.

True

wish my visual studio worked on W10 so i could create some tools. Anyway its looks good for what it is right now.

once you work through all the hurdles it will be very coowl indeed.

if i find anything else ill let ya know, ill be playing with it for a few anyways
User avatar
Errol
Toxic Ranger
Posts: 1160
Joined: Wed Apr 05, 2000 12:16 pm
Location: Sunny Wales

[Tool] Flummery v0.3.7.5

Post by Errol »

Visual Studio 2015 works a treat on W10 and is completely free. It will also be the easiest to modify Flummery in going forwards as I've moved things over to .NET 4.6 which is supported natively in VS2015.
User avatar
KiLLerBoy_001
driver
Posts: 55
Joined: Mon Aug 31, 2015 7:17 pm

[Tool] Flummery v0.3.7.5

Post by KiLLerBoy_001 »

Errol wrote:Visual Studio 2015 works a treat on W10 and is completely free. It will also be the easiest to modify Flummery in going forwards as I've moved things over to .NET 4.6 which is supported natively in VS2015.
tried installing it right after win10 upgrade though had lots of issues with it so ill try later again i guess
User avatar
KiLLerBoy_001
driver
Posts: 55
Joined: Mon Aug 31, 2015 7:17 pm

[Tool] Flummery v0.3.7.5

Post by KiLLerBoy_001 »

Ran into another issue ...

you probally knew this but alpha layers arent taking into account

Original MT2


<?xml version="1.0"?>














MT2 After export


<?xml version="1.0"?>






thereby losing all alpha data Normal + spec mapsping is lost aswell ....
User avatar
Errol
Toxic Ranger
Posts: 1160
Joined: Wed Apr 05, 2000 12:16 pm
Location: Sunny Wales

[Tool] Flummery v0.3.7.5

Post by Errol »

Yup. This has been the focus of Flummery development the last three or four weeks.

Until the next version is out you might as well just copy the mt2 files from the original tez over the top of your copied tez.

In all honesty, there is very little point to the process you're using; it would be much easier to just copy and paste the whole car to a new folder and manually edit the things that need changing.
User avatar
KiLLerBoy_001
driver
Posts: 55
Joined: Mon Aug 31, 2015 7:17 pm

[Tool] Flummery v0.3.7.5

Post by KiLLerBoy_001 »

Errol wrote:Yup. This has been the focus of Flummery development the last three or four weeks.

Until the next version is out you might as well just copy the mt2 files from the original tez over the top of your copied tez.

In all honesty, there is very little point to the process you're using; it would be much easier to just copy and paste the whole car to a new folder and manually edit the things that need changing.

I know and i did this is just to illustrate the current issues with flummery
User avatar
Errol
Toxic Ranger
Posts: 1160
Joined: Wed Apr 05, 2000 12:16 pm
Location: Sunny Wales

[Tool] Flummery v0.3.7.5

Post by Errol »

Cheers then. It might be worth checking the issue tracker first though?

As I said, I've been working on proper MT2 support for Flummery for a few weeks now...



It adds native support for every material type in the game (load and save) as well as support for importing normal/spec info from FBX files.
User avatar
KiLLerBoy_001
driver
Posts: 55
Joined: Mon Aug 31, 2015 7:17 pm

[Tool] Flummery v0.3.7.5

Post by KiLLerBoy_001 »

Aight thats coowl

cause most of the issues are caused by material mappings etc
User avatar
KiLLerBoy_001
driver
Posts: 55
Joined: Mon Aug 31, 2015 7:17 pm

[Tool] Flummery v0.3.7.5

Post by KiLLerBoy_001 »

any progress on 3.8.0 dont wanna push or rush ya but im just excited
User avatar
twisted
speed freak
Posts: 721
Joined: Wed May 23, 2012 4:46 pm

[Tool] Flummery v0.3.7.5

Post by twisted »

@KiLLerBoy doesn't nobby mentionned they've modified the way game handles materials and shit? That could explain the slow pace of Flummery development, maybe you should not get your hope up just yet, but the update is coming "sometime soon"!
User avatar
KiLLerBoy_001
driver
Posts: 55
Joined: Mon Aug 31, 2015 7:17 pm

[Tool] Flummery v0.3.7.5

Post by KiLLerBoy_001 »

twisted wrote:@KiLLerBoy doesn't nobby mentionned they've modified the way game handles materials and shit? That could explain the slow pace of Flummery development, maybe you should not get your hope up just yet, but the update is coming "sometime soon"!
Yeah he did but still ...
User avatar
Errol
Toxic Ranger
Posts: 1160
Joined: Wed Apr 05, 2000 12:16 pm
Location: Sunny Wales

[Tool] Flummery v0.3.7.5

Post by Errol »

I'm not entirely sure what you two are talking about. I've just been busy with other work and my hobby has had to take the back seat for a while.
User avatar
Trent
mindless
Posts: 2950
Joined: Wed Apr 05, 2000 9:08 am

[Tool] Flummery v0.3.7.5

Post by Trent »

Lately I had been considering writing a basic MDL/CNT exporter for Blender to help ease the process of getting stuff from Blender to Flummery as the FBX workflow is still a major roadblock for people getting cars in game and it's a huge headache for Errol getting Flummery's FBX code working perfectly for everyone. I'm not going to write an exporter pluging for Blender, though, because this morning (about 3am while rocking the baby to sleep) I had a brain wave about a much better way to do it which would also potentially benefit other packages, not just Blender.

The idea: having Blender send models directly to Flummery over a TCP socket. I ran the idea past Errol and he told me to go for it, so I installed Blender, forked and branched Flummery and started experimenting. As great an idea as it was, I had never used Blender before and never worked with sockets, so I had some swatting up to do. I have to admit, Blender is an absolute dream to script with compared to 3DSMax, you have easy access to pretty much everything and is has a sane language in python, instead of a schizophrenic one in MaxScript.

Anyway, after it didn't take too long to get to grips with TCP communication in C#, I knocked up some server code for Flummery and made a test client. That worked, so it was over to Blender to start scripting. Took a bit of time to get Blender converting values and strings to byes, but ones that was sorted it was fairly easy getting the two tools to commma. Soon I was sending actual mesh data across and... it wasn't rendering. Hello multi-threading access issues.The server code had to run in a separate thread so it could listen in the background, but adding meshes to the scene needed to create vertex buffer objects and index buffer objects on the GPU which needed to be done in the main thread! It took ages to pin point the problem but I eventually sorted it out and got it working!

So here is the result of a day's work, from not having a clue what I was doing to a working proof-of-concept:


Like I said, this has potential to support other software too, as it's a standard interface in Flummery, the other software just needs to let plugins have access to TCP sockets for a plugin to be written to send the models across.
a.k.a. Brent
User avatar
lemonrev
road raged psycho
Posts: 1537
Joined: Mon Jun 11, 2012 10:31 am

[Tool] Flummery v0.3.7.5

Post by lemonrev »

Trent, Great write up. I think the TCP idea is sweet, but im wondering if you do it like on your own pc, is it just using the like cable idea ? where you have cable to cable ? for like testing weather or not your getting access to other pc ?. or does it actually use NET ?.

Im wondering what sort of pressure this has on the socket as well as say gpu for rending things in two different place at the same time or can you model first then press GO and let it do its work ?, I mean like you would do in a app like blender to say render a car out of all those lines you draw up ?.

Anyways just a thought, good work getting it done though. And don't over do it :P
User avatar
Trent
mindless
Posts: 2950
Joined: Wed Apr 05, 2000 9:08 am

[Tool] Flummery v0.3.7.5

Post by Trent »

I'm not talking about physical sockets you plug a cable in, I'm talkng about software sockets. Sockets are a method of one piece of software (the client) connecting to another piece of software (the host) and sharing data between the two. The two pieces of software can be on different computers across a network or the internet or, in this case, on the same computer, though realistically it could allow for collaborative work with one person sending a car they have been modelling directly to someone else's flummery to be set up for the game.

There's no "pressure" on sockets because sending data between software like this is exactly what they're meant to be used for, also as it's just talking to software on the same computer it doesn't use any network bandwidth. It's also not a "real time" link either, making a change in one won't automatically update it in the other if you're concerned about performance degredation from cache or memory thrashing due to so much data being read and written to and from memory owned by either software. Currently it only sends models over when you hit the button in Blender to do so, though I'm going to look into letting Flummery request an update. It certainly would be handy if Flummery could detect if there were changes to the model done in Blender and ask if you want to update Flummery's scene.

The GPU doent really get any heavier use than it usually would either, it very common to have multiple pieces of 3d software open at one time, in fact it's pretty much a necessity. You would typically leave blender open when taking models into flummery anyway and if you're doing itterative testing and tweaking of a model you woud also be running the game at the same time too. This interoperability feature does not effect the rendering side of things at all.
a.k.a. Brent
User avatar
lemonrev
road raged psycho
Posts: 1537
Joined: Mon Jun 11, 2012 10:31 am

[Tool] Flummery v0.3.7.5

Post by lemonrev »

Thank you trent, Well explained.

Well im glad you know your business in terms of how all that can mix and match when your running so many variants of 3d rendering all at once, But See how well you go with the whole importing thing and maybe you and Errol get to test something like a car model over TCP and see how well it goes ?.

Anyways great news that things like this are happening.

keep up all the good work :)
User avatar
FatCat
mindless
Posts: 2643
Joined: Mon Jan 30, 2012 5:16 am

[Tool] Flummery v0.3.7.5

Post by FatCat »

That's a novel use of TCP i havent seen before :O
User avatar
Trent
mindless
Posts: 2950
Joined: Wed Apr 05, 2000 9:08 am

[Tool] Flummery v0.3.7.5

Post by Trent »

lemonrev wrote:But See how well you go with the whole importing thing and maybe you and Errol get to test something like a car model over TCP and see how well it goes ?
That is exactly the purpose of this exercise ;)

Right now it is extremely basic, it just sends across vertex positions, vertex normals and polygon indices with no hierarchy between the objects so a complete car wouldn't work yet, but that is nothing to do with the method of communication, it's just because I haven't got blender packing up any other data yet.

I need to add parent/child relationships, UV coordinates, vertex colours, materials, textures, bones & skinning weights, support for different object types such as Null nodes, lights, etc. so I've got lots of work ahead of me with this but like I said that's just a matter of packing the data up.

The TCP communication works the way it does no matter what data is sent over it and it's all but instant with both applications being on the same machine so the amount of data doesn't really matter either. One piece of software is told to listen for incoming connections, the other piece of software connects to it and sends some data and the first piece of software receives the data, that's all there is to it. It is extremely simple to do and it doesn't matter what data is being sent between the two pieces of software, it just works.

The complex bit is getting the blender to pack up the right data and getting flummery to create the relevant objects from the data, which in itself isn't exactly complex either now I've got the basics down. Once I get all the necessary data being packed then sending a full car across will work exactly the same as sending random objects or a whole level, it makes no difference at all :)

FatCat wrote:That's a novel use of TCP i havent seen before :O
I thought it was quite a common method of communication between apps :)
a.k.a. Brent