-
Posts
7,936 -
Joined
-
Last visited
Content Type
Blogs
Forums
Store
Gallery
Videos
Downloads
Everything posted by Rick
-
Ah, so if I have a green light shinning through glass for example, I would get a green shadow being cast? So that only works with pureLIGHT? LE doesn't do that currently?
-
Are colored shadows only for emitters? I guess I'm confused. His post didn't seem to say anything about emitters, but just colored shadows, so not sure if something is implied.
-
How is this going? I'm kind of hesitant to use this in a project I have because I'm waiting on this new version.
-
When I did this in C w/o the framework it seemed I had to also do CameraClearMode(topCamera, BUFFER_DEPTH); with my topCamera and then it worked. Now I have to test with a normal C# program to see if that works, and if that works I then need to figure out how to get it to work with kelpto's control because currently it's not working.
-
Is the code for this control available? I think it was at one point, but thought you guys closed the svn to the public. I would be interested in seeing it as I'm trying to figure out how the framework is used within the 3 render events. I'm trying to make a world that is rendered on top of everything without depth and having issues. I can do it without the framework with the normal C library, but can't seem to get it working in C# with this control which I assume uses the framework.
-
OK, I was able to get this working with a normal C project and without the framework. Now to get it in C# and with the framework. I think I need access to the global buffer create by the Renderer class so I can change the current buffer back to the global buffer from the back buffer. Not sure if that's exposed though
-
They did mention that it would be cheaper for LE users for the first month or so. Then probably back up to $500. That price is insane if you ask me, but maybe it's just Josh spoiling us with way more functionality for way less than pureLIGHT's price for basically 1 thing.
-
I think the problem is most of us are gamers and we are here to make games and don't really want to go into that hidden market because it's not of interest. We are wanting to capitalize on something that we love, and not just something that's waiting to be capitalized on.
-
This isn't just for 3D, it's also for moving axis controls on selected models in an editor. I'm using 3D models for these axis controls and they need to be drawn on top always. Either way, I'm looking for this effect. Also putting them in a non always on top world could lead to issues. I have to worry about models coming between the planes and my camera, I have to worry about lighting in whatever world they exist in, and I wouldn't want post processing effects to be on the GUI controls.
-
So I'm trying to create another world along side framework and I'm wondering if I'm doing some things correctly in the C# library. I'm also using Klepto's control. Inside the controls init event I create my world, and it's camera, set that to the current world, then load a mesh. Then set it back to the main layers world. topWorld = new World(); Leadwerks.World.Current = topWorld; topCamera = new Camera(); // load model xAxis = Mesh.Load("abstract::x_red.gmf"); xAxis.Position = new Vector3(0, 0, 0); Leadwerks.World.Current = Leadwerks.Framework.Layers.Main.World; In AfterRender I switch the current world to the top world, set that camera's matrix to the main layers camera matrix, clear the depth buffer to what I assume would be the currently selected buffer, render the world, then set the current world back. All this results in nothing being displayed on the screen. What am I missing? If I take all the extra world stuff out and just load the mesh in the main layers world I see the mesh.
-
The venture thing would be cool. If this website could provide a place for this to happen and possibly even track the obligations of who borrowed what and who owes what it would be a huge help in getting that started. That part could even be made public for non LE license holders to do. That could really set apart the LE community.
-
Maybe some game design templates (Word or whatever format) to give people an idea of what that looks like and having it ask questions that they might not have thought about.
-
Wall-o-text!! Made it through the first paragraph anyway, but adding the scripts in the shaders.pak file might not be ideal as not every game made with LE would require those scripts. I know some people were not using Lua at all and it's not really a requirement "yet" I think (I think ini files are still possible, but I know Josh said he was going to take them away at some point). Also, I know when I was working with Lua I would often want to view those files to see what they were doing and I would often do it with an external editor because it wouldn't crash like the Editor would on me many times in a session (maybe that's been fixed?). So having them in a .pak file would make that slightly more cumbersome. I think ideally there would be a packager (maybe you said that in your test, but I didn't read the entire thing) that does all this for you once you are ready to deploy.
-
I see you have Renderer:DrawTop() that does the drawing. By having it where it is, wouldn't the top layer be subject to post processing effects? It looks like it's drawn after all of that. If this was use for a GUI you wouldn't want that I would think. I assume we can just do the code in the RenderTop() after the normal framework render code runs though.
-
That works great! I'll play around to get something working with C#. Would be cool if the framework could be more flexible to allow us to define our own layers on the fly and decide in what order they are processed. This doesn't seem like you are doing anything with the depth buffer like you were talking about though?
-
Hey isidisi, have you done this before? Do you know how to get it working along side the framework?
-
Hmm, I'll have to play around with a C example, because in C# it didn't seem to work. I assume the only thing I have to do is set the transparency world as the current world, load my models that I want to be in that world, then set the world back to main and then let framework do it's thing? I also didn't think the transparency world worked that way in the framework because in the past when I've asked for wanting models to fade away I was told I would need 1 in the main world and the same model in the transparency world and that it would still have depth in the transparency world, which in this case isn't what we want.
-
Yeah, I don't see a foreground world in framework either.
-
If they were in a different world I would think/hope so because in the picking you have to give the camera and that world would have it's own camera. I think
-
I'm pretty sure it can be done with another world and buffer, but I'm not 100% sure. Been playing around but not getting far. For the GUI it wouldn't look weird at all really if you parent the plane to camera like you said, but you'd still want that plane to always be on top of all other 3D stuff so no 3D things can come between you and the GUI and you don't really want to have the GUI planes really really close to the camera as that might create some scaling and artifacts. There must be a way to do this. I'm pretty sure it's something with not clearing a camera to another world and maybe removing the depth buffer from that worlds buffer or something.
-
Thought I'd post code that will give what most editors do in terms of moving around. Once the MouseZ() issue is resolved I'll add that also. using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using Leadwerks; namespace EditorTest { public partial class Form1 : Form { private readonly Vector3 camrotation = new Vector3(); private float move; private float mx; private float my; private int mz; private int origx; private int origy; private float strafe; private bool rightMouseDown = false; private Mesh xAxis; public Form1() { InitializeComponent(); } // it all starts here private void RenderContext_Init(object sender, EventArgs e) { RenderContext.InitFramework(false); RenderContext.RefreshRate = 60; RenderContext.Start(); Leadwerks.Framework.StatisticMode = StatisticMode.Detailed; Leadwerks.Framework.Layers.Main.Camera.Position = new Vector3(0, 0, -4); } private void RenderContext_Render(object sender, EventArgs e) { } private void RenderContext_AfterRender(object sender, EventArgs e) { Drawing.Blend = BlendType.Alpha; Drawing.Text(mx + ";" + my, 0, 250); Drawing.Text(RenderContext.MouseZ().ToString(), 0, 300); Drawing.Blend = BlendType.None; } private void RenderContext_PreRender(object sender, EventArgs e) { if(RenderContext.MouseHit(MouseButtons.Right) == 1) { // save off the orignal location of the mouse so we can put it back here when done origx = RenderContext.MouseX(); origy = RenderContext.MouseY(); // bug: seems the mouse is getting visible after the first frame so we need to do this here and in MouseDown below Leadwerks.Mouse.Hide(); Cursor.Hide(); RenderContext.MoveMouse(50, 50); } if (RenderContext.MouseDown(MouseButtons.Right)) { Leadwerks.Mouse.Hide(); Cursor.Hide(); // camera look mx = Maths.Curve(RenderContext.MouseX() - 50, mx, 1); my = Maths.Curve(RenderContext.MouseY() - 50, my, 1); // move the camera back to our preset location for camera movement RenderContext.MoveMouse(50, 50); // add the delta to the rotation camrotation.X = camrotation.X + my / 5.0f; camrotation.Y = camrotation.Y - mx / 5.0f; Leadwerks.Framework.Layers.Main.Camera.Rotation = camrotation; rightMouseDown = true; } else if ((!RenderContext.MouseDown(MouseButtons.Right)) && rightMouseDown) { rightMouseDown = false; // move the mouse back to where it was RenderContext.MoveMouse(origx, origy); Leadwerks.Mouse.Show(); Cursor.Show(); } move = Maths.Curve( (float) (Convert.ToDouble(RenderContext.KeyDown(Key.W)) - Convert.ToDouble(RenderContext.KeyDown(Key.S))), move, 1); //int scroll = RenderContext.MouseZ() - mz; //mz = RenderContext.MouseZ(); //move += scroll; strafe = Maths.Curve( (float) (Convert.ToDouble(RenderContext.KeyDown(Key.D)) - Convert.ToDouble(RenderContext.KeyDown(Key.A))), strafe, 1); Leadwerks.Framework.Layers.Main.Camera.Move(new Vector3(strafe / 10.0f, 0, move / 10.0f)); } private void Form1_FormClosed(object sender, FormClosedEventArgs e) { Engine.Terminate(); } private void Form1_Load(object sender, EventArgs e) { } } }
-
I was thinking of where my cutoff point would be also. Most likely $200 as well for LE and the tools that it has currently. They aren't that mature yet when compared to some of the others so spending more would be hard for me to do.
-
Question about the FPS. With nothing loaded it says 32, and when I have a light, 1 model, and a cube I get about the same. Is that FPS correct? If it's not, do you know how much of a FPS hit the control takes when compared to running the LE window in C#? I'm curious because .NET controls can be put on top of your control to give a quick and dirty UI, and when docked to the .NET window resizing to anysize is easy as pie, so would be cool to use that for a game even. A simple game anyway.
-
I can only assume it's because of the colored shadows and some other features that we might find out about once a feature page is up?