Jump to content
TylerH

Leadwerks to manage its own memory

Recommended Posts

This is one of the biggest downfalls of Leadwerks.

 

Other than the end-user (us) making calls to the FreeXYZ() commands, Leadwerks seems to not handle any of its own memory; it leaves everything up to the Blitzmax Garbage Collector.

 

In the real world of programming, alas C/C++/C99, and non managed/BASIC languages, there is no garbage collector, thus you must either manage your memory well or suffer from obvious leaks.

 

I believe that if Leadwerks Engine managed its own memory, and smartly handled references, pointers, etc. and freed things on its own when appropriate, and not having any dependence at all on the BMX Garbage Collector, it would finally be on an equal plane to other engines on the market today.

Share this post


Link to post

Even with a garbage collector, I would always favour tracking all my entities and freeing them only when I wanted to. Thus in my case, there shouldn't be any leaks on my part.

 

If you lost a reference to an entity, then yes it may as well be deleted because you can't reliably get it back, but I would say it's poor design to get into that position in the first place.

Share this post


Link to post

Well, we're clearly not in the real world of programming, and I guess this engine is not on an equal plane to other engines on the market today.

Share this post


Link to post

This is one of the biggest downfalls of Leadwerks.

 

Other than the end-user (us) making calls to the FreeXYZ() commands, Leadwerks seems to not handle any of its own memory; it leaves everything up to the Blitzmax Garbage Collector.

 

In the real world of programming, alas C/C++/C99, and non managed/BASIC languages, there is no garbage collector, thus you must either manage your memory well or suffer from obvious leaks.

 

I believe that if Leadwerks Engine managed its own memory, and smartly handled references, pointers, etc. and freed things on its own when appropriate, and not having any dependence at all on the BMX Garbage Collector, it would finally be on an equal plane to other engines on the market today.

 

 

Tyler, as Josh is pointing out I'm guessing, sometimes your criticism is kind of extreme and hard to swallow. I've been in the "real world" of programming for 8+ years now, and guessing Josh has as well, so it's hard to swallow things like that when they come from someone who just got into high school and hasn't been in the "real world" yet.

 

In the "real world" LE is a very competitive game engine. It's run by 1 person who hires help out sometimes. I think you'll soon find out that in the "real world", things are rarely perfect because of restrictions and timelines that happen in the "real world".

 

So my whole point of this was to maybe help you see how you can better make criticisms that are read more friendly and seen as more useful.

Share this post


Link to post

Well, the problem with that is, my seemingly friendly and useful critiques are always ignored.

 

Vex has been using the engine for 2 months now, and bugs we reported in month 1 have been completely ignored and swept under the rug to other, seemingly useless bugs that I have never even experienced.

 

I just think something is out of whack here, and it gets me a bit ticked off.

 

--

 

If you want to get into disputes over age here, I will gladly prove you wrong in your assumptions.

Share this post


Link to post

Well, the problem with that is, my seemingly friendly and useful critiques are always ignored.

 

Vex has been using the engine for 2 months now, and bugs we reported in month 1 have been completely ignored and swept under the rug to other, seemingly useless bugs that I have never even experienced.

 

I just think something is out of whack here, and it gets me a bit ticked off.

 

--

 

If you want to get into disputes over age here, I will gladly prove you wrong in your assumptions.

 

 

Prove me wrong about what? I know you are smart Tyler, but there are things in life that you only learn from experience. You should watch some of these genius movies out there were the kid learns that being smart doesn't mean you know everything. It means knowing that you don't.

 

So for 2 months there were bugs reported that didn't get fixed. Let's take a look at what has happened over the last 2 months. First on the personal side, Thanksgiving & Christmas. This takes time away to spend with family. Now pending what Josh has going on that could mean a ton of time. Is his family located somewhere else? Does he have any kids anywhere? This time of year also means financial stress for many people. Have you estimated how much Josh really makes from LE? I have, and it's not very much from what I can see. I have to assume he either has a ton of money from something else, lives pretty poorly, or has a full time job and does this on the side, which means he has even less time.

 

On a professional side, he just came out with this new Lua implementation where he didn't really know anything about Lua not that long ago. Because of what some people where pointing out he rewrote the multi-state Lua configuration to a single state. He has a ton of documentation to do. He created this new site for us. The things Josh has done from what LE makes money wise are amazing if you ask me.

 

You want to talk about age? At 15 you have more time to yourself than you realize. The stresses in your live aren't nearly what they will be when you are on our own, or even worse, you are responsible for a child/wife. Being smart at any age has very little to do with anything. Balancing your life when you have way more responsibilities is when things get tricky. That is why someone older than you might have a hard time swallowing things when you talk about the "real world".

 

So again, all this means, that because there are bugs sitting for 2 months, or even 6 months isn't anything to get pissed about. Go find a bug that MS created and see how long it takes for them to fix it for you. Josh is doing a great job for a 1 man crew and LE is the best engine I have seen in years of searching for the price that you get. You will be much better off simply reporting the bug with prove in the tracker and Josh will get to it when he can.

Share this post


Link to post

What do you think I was referring to? Why don't you take a look at the bugs Ryan Wenke, head of Vex, posted from testing I did with him.

 

Josh took the time to respond here and in my other thread about editor entities with meshes, but from what I can tell didn't even look at the bug tracker...

 

--

 

Some corrections: I am 16, I work a full-time job, 40 hours a week, I still attend school, and still make it with every single other commitment I have ever made, ranging from Boy Scouts, to things with friends, seeing my grandparents everyday, Robotics, Academic Challenge, Kiwanis, Salvation Army, etc.

 

I live in a single parent household, and have to take on the responsibilities of an adult in order to keep my house and family in order. I supplement the lives of both my mother and grandparents as well, so you can just shut your mouth and redirect your focus on something other than a post about how people spend their time, and how at my age I have so much time to myself, because I absolutely do not.

Share this post


Link to post

Because he probably browses the board sometimes as a break from what he's doing. I can only assume the only way you would be happy is if Josh gave you a detailed plan of each task he's doing or plans on doing. You've been in the community long enough to know Josh does what he thinks is best for business. That's what's making him money.

 

Now I'm sure Josh does care about Ryan Wenke, head of Vex, but he also has more people shouting loudly for documentation. Good documentation can get people in the door because so many other engines have poor documentation.

 

Me, personally, I'm not saying Josh is thinking this way, I wouldn't be worrying to much about Ryan Wenke because from what I can see he and his team look to be just another high school team wanting to make it big in games which is as long a shot as any of us. He has good artists though I'll give him that.

Share this post


Link to post

I live in a single parent household, and have to take on the responsibilities of an adult in order to keep my house and family in order. I supplement the lives of both my mother and grandparents as well, so you can just shut your mouth and redirect your focus on something other than a post about how people spend their time, and how at my age I have so much time to myself, because I absolutely do not.

 

Sadly, you still do have more time to yourself than you will when you have your own family.

 

You also seem to have some anger issue from that post. It's just best to keep a cool head and do as much helping for Josh as you can. Getting angry doesn't help anyone solve problems. That's all I'm saying. Put yourself in Josh's shoes once and you might have a different view.

Share this post


Link to post

Because he probably browses the board sometimes as a break from what he's doing. I can only assume the only way you would be happy is if Josh gave you a detailed plan of each task he's doing or plans on doing. You've been in the community long enough to know Josh does what he thinks is best for business. That's what's making him money.

 

Now I'm sure Josh does care about Ryan Wenke, head of Vex, but he also has more people shouting loudly for documentation. Good documentation can get people in the door because so many other engines have poor documentation.

 

Me, personally, I'm not saying Josh is thinking this way, I wouldn't be worrying to much about Ryan Wenke because from what I can see he and his team look to be just another high school team wanting to make it big in games which is as long a shot as any of us. He has good artists though I'll give him that.

 

 

I don't think an argument needs to surface here - in my honest opinion Tyler seems very passionate about Leadwerks and wants to see it thrive like everyone else.

 

I agree with you that Josh is doing the best job he can as a 1 man crew, but sometimes being a leader, creator, or founder of any establishment requires recognition that you can't do everything yourself. If your intentions are to build a great game engine that other companies can use in their projects, there needs to be a better response to the lack of bug fixes than simply "I am just one person." Use the community that is standing by you to help structure and update the engine so bug fixes are dealt with in a timely fashion. Having a successful game engine is much more than high quality graphics at a low cost. You want to make sure technical issues are fixed as soon as possible or else consumers will get fed up and find another engine; even if it is slightly more expensive.

 

As far as the comments go regarding my team, I think it's very unprofessional to speak on behalf of Josh and secondly comment on the structure and integrity of my team. I have personally invested a lot of funding into this project and selected an engine that fits our needs graphically and economically. While I know you have no official relation to Leadwerks, I highly suggest not verbally insulting a customer; it shines a bad light on yourself, the community, and the Leadwerks company as a whole.

 

Let's try to work together to get these bugs acknowledged and fixed. I will continue posting anything I come across and do my part. Thank you.

Share this post


Link to post

As far as the comments go regarding my team, I think it's very unprofessional to speak on behalf of Josh and secondly comment on the structure and integrity of my team. I have personally invested a lot of funding into this project and selected an engine that fits our needs graphically and economically. While I know you have no official relation to Leadwerks, I highly suggest not verbally insulting a customer; it shines a bad light on yourself, the community, and the Leadwerks company as a whole.

 

The comment regarding your team was also regarding everyone who is trying to get into the independent game development business. The odds of your team, and everyone else trying to make some money off games, are very slim. Your team has about the same odds as the rest of us as even completing a game. Therefore, the bugs you find are just as important as the bugs anyone else finds. The excuse of being a "1 man team" does work perfectly fine. Josh does not make very much money from LE and hiring out people to fix things costs money. If he hired out to fix his bugs he's eating away at his profit margin, which would make even doing LE pointless for him. Because LE costs $200 and he doesn't have all that many customers to sustain a living from it (from what I can see), he can't afford to hire people to work on it.

 

The community can help out only so much without seeing LE's source, but he can't give that out because someone could just steal it and call it their own and he would lose customers.

 

Bug fixes will be slow because Josh only charges $200 for the engine.

 

Many people have reported bugs that haven't been fixed yet. They all think their bug is the most important. Most realize if what they report is a real bug Josh will get to it eventually.

 

I'm also not talking on behalf of Josh. I made it clear that these are my views and not the views of Josh. I can't speak for him and I'm not. These are my comments and mine alone.

 

I'm sorry if I offended anyone, but these are the realities. From everything I've read about the game industry, it's a cutthroat business and we all need to take criticism because there is a ton of it out there. If you think I was harsh, just wait until your paying customers get their hands on your game, if it even gets that far. Again, that's not a slam on you, it's a reality of the business.

Share this post


Link to post

I'm sorry if I offended anyone, but these are the realities. From everything I've read about the game industry, it's a cutthroat business and we all need to take criticism because there is a ton of it out there. If you think I was harsh, just wait until your paying customers get their hands on your game, if it even gets that far. Again, that's not a slam on you, it's a reality of the business.

 

Exactly - and in a cut throat business we all need to work together :blink:. I wasn't offended by your comment, I just thought it was a bit silly and perhaps too embedded with insults towards Tyler's age. Let's lay this topic to rest, no sense in filling the forums with bickering and such. Back to work!

Share this post


Link to post

So looking at the bug, what effect are you after with multiple directional lights? To me it seems like there was only ever meant to be 1 directional light in a scene. Do you have an example of the effect you are after with multiple directional lights vs only 1?

 

Also, I can't imagine this would be a show stopper right now. You can still continue developing and I can only assume your game is about a year out from being complete. With a near complete game, your bug issues will hold a ton of weight with Josh.

 

 

 

My comments were not meant as insults. They were said from experience. The problem with comments like the ones I said were that anyone younger than a certain age will view them as insults and anyone older than a certain age will view them as truth. That's the problem with the age discussion. It's like your parents telling you something that you think you know more about. Then one day you realize where your parents were coming from. This only comes with age because you have to experience it to realize it. You experience certain things with age. It's not meant as an insult, but as advise.

Share this post


Link to post

There seems to be multiple issues regarding the directional light. The first yet not important one is that 2 directional lights will cause the scene to squish. I posted a bug report with screenshots in the tracker if you wish to take a look.

 

The rendering issue I posted in my current bug report was in result of not having the shadow map resolution of the light set to 1024.

 

The third issue was when I edited the offset/range values of the light. This issue created the jerky behavior that is discussed in the Editor forum. While the rendering issue we were having has been sorted out, would be nice to look further into the directional light.

Share this post


Link to post

Two directional lights for dynamic day/night. I've hacked my way around it but of course it was far more work than just being able to have two directional lights. The multiple directional light bug also makes the water plane follow the camera rotation x-axis, and water reflection follow the camera rotation y-axis.

Share this post


Link to post

This thread is marred. Feel free to try again in a more polite manner.

Share this post


Link to post
Guest
This topic is now closed to further replies.
×
×
  • Create New...