LukasPJ
-
Posts
462 -
Joined
-
Last visited
Content Type
Profiles
Forums
Blogs
Articles
Docs
Gallery
Posts posted by LukasPJ
-
-
So, one of the drawbacks of modular environments is that they take more drawcalls (as 1 simple house that could be just 1 drawcall, is now 1 for the door, each wall, the roof etc.)
Do you know how much of an effect that has?
Is it possible to compile a prefab into "a single model" that could be drawn in fewer drawcalls? Does anyone know if it even matters?
Just asking because I love the concept of modular design kits, and would love to hear more about your ventures!
-
I did the port of TAML and I don't know how it works apart from the basics :|
-
New release!
This release primarily focuses on various bug-fixes.
The biggest new feature in this release is more script examples!
This release does not have any TorqueScript code, only C# and C++, so there's more test-cases and a more complete insight into Torque3D with C#. It's based on the awesome T3Dbones repository, and you can see the C# code online if you don't want to download it here: https://github.com/lukaspj/t3d-bones-sharp
Currently known issues:
- A lot of the vararg methods are not working
- Some enums seem to be marshalled incorrectly
- C#-destructors doesn't seem to clean-up the SimObjectPtr properly
- A lot of the vararg methods are not working
-
Hello,
So, I decided to test out an in-progress build of a land feature I'm working on, with a quick and ugly texturing job, and I noticed a bug in the terrain system. Maybe it's known about, but I couldn't find anything about it.
Basically, the game engine ignores holes in the terrain for character collision, but it seems to work okay for other items; I threw out one of the mines, and it went through the hole as it should. The model is set down into the ground, with the area inside it emptied out, as it would be in an actual scene.
I thought maybe it was an issue with my model or something during export, so I did an A/B test... one with the heightmap terrain, and one without it. Without the terrain in the scene, it works fine.
Here's a couple short vids demonstrating it...
Any idea why that might be happening?
I don't know much about these things, but Player collision is handled differently than all the other stuff's collision (among other things it's a lot more precise I believe), so maybe there is a bug in the Player collision code?
-
Sounds great, @LukasPJ! Fill me in though, how does this relate to / contrast against the work you guys have been doing for years re: T3D and C#? I guess I kinda thought you had done this some time ago. But it's awesome! I too would love to be able to share T3D without forcing people to learn TS. For my purposes, I wouldn't even mind if the existing Torque Script for the editors, etc. stayed in place, as long as new scripts could be written in C#. It's been a low priority for me so far, but consider me on the list of interested parties!
Well first of all Vince's (from Winterleaf) version of C# for Torque3D is a whole other project. I'm not really affiliated with WLE anymore, in fact I don't think it even exists (?). They moved to UE4 some time ago.
Second, I believe I'm going for a cleaner solution. At least, I'm trying to make it as light-weight as possible. Furthermore, the OMNI stuff was still stringly-typed. I'm going for a completely typed interaction with the engine, with no conversion to and from strings (where possible at least).
OMNI also modified the engine quite a lot (example: https://github.com/Winterleaf/OmniEngine.Net/blob/3363364e8c4514d5ef18574ce2200368e5946df4/Engine/source/T3D/aiClient.cpp#L692 ) I don't want to step on anyones toes, so I'm keeping engine-modifications to a bare-minimum. The only modifications I've made is various bug-fixes and improvements, and a few changes to the macros for consistency reasons.
In case you are curious, the OMNI repo is still up:
-
You sexy beast! ;)
Very awesome. I need to give this a proper run-down.
So outside of obvious, improvements like cutting back on how much string interpretation we use and whatnot, what do you think is still missing at least an initial implementation?
It's sounding like it's pretty close to at least the 'everything runs' level.
I really want to implement typed callbacks, right now they are stringly typed, and you don't override them from the parent class.
Datablocks don't really work properly in C# yet, and there are a bunch of the structs (like Point3F) that don't work (Point3F does though), so they will have to be brought up to date.
Furthermore, some things might not be marshalled properly (bools for instance) and I don't know if enums work.
Also have to decide what I want to do with packages, but in the big picture this is all minor things. The one major issue, that I know of, is cleanup. C# allocates SimObjectPtr's in order to access C++ objects safely and being able to cast errors, but they are not delete properly on C# destructors, this makes the engine crash if you enter a mission twice, as some things are not cleaned up properly.
-
Monkeychops said:Seems to run for me, although not sure how to do much except start the blank scene.
This is really cool - I have to say I've kinda given up on Torque because TS is too quirky and not a lot of open source libraries and such out there for it.. but C# would be a whole new story.
Honestly, I don't mind TorqueScript, but yeah the reason I'm doing this C# thing, is because of a Hackathon I want to hold at my University, and I don't feel like asking people to learn TS in a day

On another note..
New release!
This release features:
Properties
All SimObjects static fields can now be accessed like regular C# properties:
StaticShape coin = Sim.FindObject(obj); ParticleEmitterNode emitterNode = new ParticleEmitterNode { DataBlock = Sim.FindObjectByName("CoinNode"), Emitter = Sim.FindObjectByName("CoinEmitter"), Position = coin.Position }; emitterNode.registerObject(); emitterNode.schedule(200, "delete");
They are all going through the console, so they are converted to and from string which of course is sub-optimal. But it's something!
Furthermore, I added some more sample C#. scripts.. Namely first and second part of this tutorial:
http://wiki.torque3d.org/scripter:coincollection
I still haven't fixed creation of datablocks, so they are eval'ed atm but small steps all the time!
-
The Torquescript language itself hasn't changed much.
Torsion is the best IDE, and it went open source so yeah I would recommend that.
Try looking at the wiki http://wiki.torque3d.org/wiki:_scripter-start
If you want to learn in relation to a project, try this tutorial, it is short and easy :
-
Yeah, TorqueScript works just like it has always done. C# is just an optional layer on top of that.. It doesn't even have to be merged into the official repo!
Got it and that's awesome! I'm also getting the same error as [mention]deathbravo[/mention].
Just had a chance to look at it, and apparently the precompiled .exe file is outdated. So recompiling it through VS should fix it. I'm updating an updated .zip file soon :)
-
This looks interesting Lukas, so basically you can still use both TorqueScript and C#? nice. :)
Yeah, TorqueScript works just like it has always done. C# is just an optional layer on top of that.. It doesn't even have to be merged into the official repo!
@deathbravo Huh, that's really odd. Thanks for reporting the issue! :) I'll have a look at it, seems like it might just be some outdated binaries or something though.
-
Hey guys,
So, I've implemented T3D into C# in order to provide a C# scripting interface for the engine. It's still very much a work in progress, so it's not nice or anything. It's more or less a proof of concept.
So I'm looking for someone interested in downloading the attached binaries, opening it up and taking a stab at it just doing different things you are curious about and reporting any marshalling errors for me.
I will provide more information about this whole Torque3D and C# thing in a blog, when the project is more mature.
Be advised, that this is not polished in any way and you should know your way around TorqueScript, C# and Torque itself in order to figure out how to use it.
The attached code file delivers the following:
- The Empty project with a compiled DLL
- A folder "c#" with the following:
- A C# project "Game" with a file program.cs which initializes the engine and TestScript.cs which is a translation of the main.cs file
- A C# project "Torque3D" with all the interop-code and proxy classes in order to interact with Torque3D.
- A C# project "Game" with a file program.cs which initializes the engine and TestScript.cs which is a translation of the main.cs file
You can download it at: http://lukasj.org/TorqueSharp-0.3.0.zip
Feel free to ask any specific questions about how it works and report all bugs you find. Thanks a ton!
Edit:
In case anyone is curious, here is a comparison between main.cs in C# and TorqueScript and there's also a bit more information to be found in the now-inactive Torque6-C# wiki: https://github.com/lukaspj/Torque6-Embedded-CSharp/wiki
- The Empty project with a compiled DLL
-
@Duion I think the issue is that clouds are a post-process and therefore they don't really exist enough to cast shadows.. For example, even if we could do that, the clouds would only exist where you could see them, thus they would disappear when you were looking at the ground, which would make for some weird shadows.
So casting shadows from the clouds is more advanced than that, not saying impossible, but definitely not as cheap.
-
Instead of adding a Tex2D, wouldn't it be doable with just a float4?
Edit: Also, just adding it to the terrain, would not affect shadows on other objects, might look a bit weird with a shiny house in a dark cloud shadow
-
Which GPU?
-
Sent you a pm with links to some of my open source resources, but then I realized I might as well have posted them here, so here they are:
New TerrainTextureBlending:
https://github.com/lukaspj/Torque3D/tree/New-Terrain-Texture-Blending
ParticleSystemRefactor:
https://github.com/lukaspj/Torque3D/tree/ParticleSystemRefactor
A C# prototype for Torque3D:
https://github.com/lukaspj/Torque3D/tree/CSharp-Prototype
A C# beta test for Torque6:
-
1st of all, @Johxz it's not quite the same thing, since @seanbradyit offers to host it and even pay for it while you're just collecting a library of links.
2nd, I don't think it's report-worthy. Maybe it would be a better idea to clear up the misunderstanding rather than starting a dispute.
Anyways, @seanbradyit sounds like an interesting project, I hope more people here read your post. I think it's very relevant for this community, since there's a lot of old projects floating around :)
-
If you're sticking with Torque, remember that we have a small but helpful Wiki as well:
It's not that widely used, but there are some useful information in there. Especially for getting started.
I wrote this beginners guide which has received a lot of positive comments:
http://wiki.torque3d.org/scripter:coincollection
Furthermore, you seem like me, the kind of guy who hates when there is too much stuff in your project, and you are not completely sure what does what (I can't stand auto-generated code and templates :P )
If so, take a look at this repository:
https://github.com/crabmusket/t3d-bones/tree/master/tutorials
Which has a lot of very useful tutorials for starting from scratch.
-
Hey guys,
We expect to be updating the forum software tomorrow 21. of August. The expected downtime is 16:00-24:00, but we might extend it to outside of that timeframe.
EDIT: Time in CEST
Sorry for the inconvenience!
Edit:
Updated forums 3.1.3 => 3.1.9
Updated SortableCaptchas 2.0.0bc1 => 2.0.0
-
Can't you just maintain that in a separate branch? Should not be that hard. I think most people already maintain a separate modified engine for their projects.
Well sure I could, in fact I've been working with C# for the sake of Torque6 and not for the sake of Torque3D, so it's not really a priority for me to get C# in Torque3D. But if it makes sense to include in the engine, as it is a small amount of changes in order to implement, then why not?
I have to point out yet again that the change is about exposing an interface. Think of it as taking Torque3D, and transforming it into an engine with a lot of buttons and input and output panels, instead of a box with a start and a stop button as it is currently.
You can then, put that engine in a C# car, a TorqueScript car or a Java car, whatever you like.
If you don't agree on the benefit of that, then I guess we just have different visions of what Torque3D should be.
-
As long as TS continues to work, I don't see the problem.
On a personal level, I would rather not use anything from Microsoft. Fairly recently I've decided to cut myself completely from Microsoft all together.
Their basic business model is so far from what I want to contribute to. Anyway I switched to Linux only and am not looking back. I admit Torque 3D getting a Linux port was one of the last requirements before switching.
It should work just fine, the changes that are being considered is probably just the ones from this commit. (Which is not finished, but that is the changes needed to get most of the C# stuff working)
´
-
C# is dangerous: http://www.theregister.co.uk/2009/06/29/richard_stallman_cautions_against_mono_in_free_software/
It may be open source, but it may also turn out as a trap, since Microsoft was always hostile to free software and very likely always will be.
T3D's main strength is the open source part and if you risk that, it is a potential suicide move.
You are joining to an article which describes speculations about how a 3rd party c# implementation might be shut down by Microsoft, which 7 years later hasn't happened and are using that as an argument why Microsoft hates free software? I don't get it...
-
We're also looking at possible C# support, based on Lukas's fine work.
I think this is a terrible idea.
The main strength of TS is that it's a scripting language aimed at making games, and even more, it's aimed at making games using Torque. Shoe-horning another general purpose language just because it's "flavour of the month" is going to be problematic, and a real turn-off. It'll have to be hacked all to hell to fit Torque and rather than elegant ways of working with scripting within the engine. There will be workarounds, hacks, and things that never work quite the way that they need to.
TS isn't broken. There's no need to fix that.
C# is faster, more modern and has a lot of libraries available.. that's some of the benefits of c#.. other languages too.. ideally, being able to strip out TS could make the codebase simpler too, but that's a whole other discussion..
Anyways, as I mentioned the work I've been doing was really to enable c# to be plugged in to the engine and not build into the engine. So it's not as invasive as you think.
-
C# isn't an option since it is not open source, I thought this was already discussed.
I'm pretty sure .net is MIT...
-
Hey guys,
I'm a bit busy at the moment, so just wanted to ask it here:
What is the state of the terrain texture channels? Which channels and textures are used for what? And are there any free channels? There was some talk that Deferred Shading might clear something up.

Changing profile name?
in Website Feedback
Posted
Hello, no it's not possible for you to change your own username, but admins are able to.
I fixed it for you! Tell me if I made any mistakes :)