Jump to content


  • Content Count

  • Joined

  • Last visited

Community Reputation

4 Neutral

About Wolfsong

  • Rank
  • Birthday 08/02/1973

Profile Information

  • Gender
  • Location
    NY, USA
  • Interests
    Games, Gaming and Game Design, Music, Movies, Books and trying to learn new and interesting things!
  1. Ahhh I see. So creating a 'context' is creating the viewport inside the window. Got it. Thanks!
  2. For this lesson here: http://www.leadwerks.com/werkspace/page/tutorials/_/loops-r17 I want to see if I'm understanding something right. Though the lesson is about loops (which I do understand) I'm particularly interested in the bits about creating a Window and then a Context (which I'm not sure I understand). ------------ --Create a window window = Window:Create() --Create a rendering context context = Context:Create(window) --While loop while window:KeyHit(Key.Escape)==false do --Set the drawing color and clear the screen context:SetColor(0,0,0) context:Clear() --Set the drawing color and blend mode context:SetColor(1,1,1) context:SetBlendMode(Blend.Alpha) --Draw some text onscreen context:DrawText("PRESS ESCAPE TO END THE PROGRAM.",2,2) --Update the screen context:Sync() end --------------- So, in this example, are we creating a Window which is then identified as 'window' - and then the Window ('window') is being assigned as the Context or "focus" of the following instructions? So, using 'context:SetColor(0,0,0) would be the same as using window:SetColor(0,0,0)? Am I understanding that right? If so (or even if not), why would the line: while window:KeyHit(Key.Escape)==false do not be: while context:KeyHit(Key.Escape)==false do ? Or is hitting the Escape Key something that can only refer directly to 'window' as that relates directly to the actual Window, and not to 'context', since that relates to the variable 'window'? Hopefully I explained that well lol. Anyway, thanks! Edit: Tried to place the code inside Code tags, but it ended up adding a ton of color tags.
  3. Ah! Would never have thought of that. Thanks!
  4. Ah.. Thanks for the links. I'd checked the lua.org one, but really didn't like how they presented the info. I'll check the first link out, though. Edit: Hmm... looks like that other link suffers the same problem of explaining one concept by throwing around terminology for a bunch of other, unfamiliar ones, which is what I was describing before. Maybe I'll just try and find a good book on it lol. Thanks!
  5. Hey, Rick. Thanks for the explanation. I wish I was the type who was more "that's how it is because that's how it is". Sadly, I'm not. I've never been able to learn through pure memorization. I really need to understand why I'm doing what I'm doing. Why should I do it "this way" instead of "that way"? So, while others likely just copy and paste, or type in the code in that example from the marble project, and move on. My brain sees an apparent discrepancy that isn't immediately obvious to me, and now "I need to know what's going on there". It becomes "Why is it . in one case, and : in another? It must be important in the context of the tutorial, so it's something I should understand and not just skim over it, or it'll come back to bite me in the rear later in some unrelated project". Until I'm satisfied that I understand that, my brain won't let me move on to the next thing. It's awful and I hate it, but well... That's why I like tutorials that start really simple and explain everything, leaving nothing un-explained, so you're building on knowledge as you go forward. I hate my brain sometimes lol
  6. TL;DR: Josh should write/sell a beginner's book on Lua programming. Even just an e-Book. I think he could do an excellent job of it, and make many people happy. Long version: To be clear: This post has nothing to do with Josh's tutorials here. His explanations are actually pretty clear and he does a better job of explaining things than almost anyone I've read/seen teaching programming in any form. For one, he uses analogies that can be understood by people unfamiliar with the subject matter, making it easier to grasp what he's explaining. It can't be overstated how helpful that is to someone who feels like they're staring at code from The Matrix. That's how tutorials for completely new users should be done, in my opinion. Josh, you should write a book on learning Lua for beginners. I'd pre-order it. That said... So here's a good example of why I find learning Lua (or any language) so impenetrable. Maybe other new users, or those who can remember back to when they were new can understand where I'm coming from. Basically, I'm finding that - almost universally - people who write tutorials for programming, to be blunt, suck at it. They seem to have zero grasp of the concept that they're explaining things to complete beginners who do not yet have a grasp on all the terminology they throw around and take for granted. And so they launch into explanations using terminology and explanations that then need explanations, which then need explanations, ad infinitum. It becomes this ever-deepening rabbit hole of needless complexity and confusion - all over something that probably could have been explained perfectly clearly using common terms that new learners can understand, were someone more qualified to teach the concepts doing so (such as Josh). I'm going through the Marble Tutorial and directly into the first part, I've hit something where I'm wondering "Well that's weird, why are those things different?" Specifically this bit: function Script:Start() --Create a camera self.camera = Camera:Create() --Update the camera self:UpdateCamera() end I'm looking at it, and wondering why is it self.camera in one case, but self:camera in the other? What's the difference between . and :? So, I go to Google. Several results later, I'm not quite sure I understand it, because the explanations launch into terminology that assumes previous knowledge of the language. For example... This page Now, the author of that article seems to understand they're relating this information to new Lua programmers. They specifically indicate that new users tend to be confused about the difference between the two. Perfect! They get it! This should totally clear it up. Wrong. Instead, I see paragraphs like this: Umm... What? Is that *really* how you explain something to someone new at Lua? So now I have to go looking up the definition of 'len' and 'methods' and 'string' and 'runtime' and possibly other things... just so I can, hopefully, understand the difference between . and :. Maybe I'm crazy, but if you're trying to explain new concepts to someone unfamiliar with the subject matter, referencing other potentially unfamiliar concepts to do so is probably not the best approach. This is why I find most "newbie" programming tutorials to be counter-productive. The authors have no idea how to convey concepts to people who have little if any understanding of the subject. They write as though they're speaking to another programmer, and not someone completely new to it. This is really more of a rant than anything, and I apologize for that. But if it inspires Josh to write a book on Lua for beginners, then it's worthwhile lol. I just wanted to share an example of why I keep being put off of learning languages. I'm sure I'll "get it" if I just keep bashing my head against the wall, and keep Googling. But I just can't help but feel like that needn't be the case. Or, maybe it's a sign I should just stick to graphics and stay away from programming.
  7. Hello, An oddball question here. I'm going through the Marble game tutorial and noticed that the layout in the tutorial screens has the Debug, Output and such on the right side of the window. I've seen screencaps of it where those tabs are along the bottom. Is there a way to change that? I've looked in the config, and tried dragging the tabs manually, but no dice either way. I rather like the tabs being across the bottom better. Is there a way to change that? Thank ya
  8. Hi all, Thanks for the help/feedback! I'll just forge ahead into it and figure this stuff out. It has to sink in sometime!
  9. I had glanced at the marble tutorial, in fact, and intended to give it a go. I just wasn't sure if it was something that really starts with absolute basics and builds up, or if it's tossing you in at the deep end, assuming you've grasped everything else up to that point (since it's the last in a series of Lua tutorials). It could end up confusing me more, rather than helping. Unfortunately, I lack the familiarity with Lua to know if that's the case or not. So, I've been looking for other sources that build a bit more slowly, over the course of a number of different, but increasingly complex projects. I have a feeling that I'm somehow making this all complicated than it needs to be lol. I've tried learning other languages and always seem to hit the same wall, where as long as the concepts and related syntax are straight-forward enough, I'm fine. But then, at some point, the code starts to become less about straight forward numbers and words, and all these symbols are being mixed in, with nested parentheses and periods and colons and all this stuff going on without context or explanation - it becomes "just type "this" and "this" happens". At that point I'm completely lost. I guess there's something I'm expected to understand or grasp by that point for that stuff to make sense. For some reason I'm just not grasping it. I've tried reading through an existing script, but it's the same problem I bump into. It makes sense as long as it's basic/simple stuff. But then it gets into crazier things, and I'm completely lost again. Further, sometimes even reading the documentation doesn't help, because even documentation will, after a point, assume understanding of previous concepts that I still won't understand. It's really a mess lol. It's why I'd like to find a series of tutorials that starts super simple, and builds over time, with each project building off previous projects so I'll have repeated, and better understand those earlier concepts by the time I start getting into the more complex stuff. But again, maybe I'm just letting myself get all confuzzled by all the symbols and such going on. No idea why it's so difficult for me. I think it might be 'cause I tend to be a very visual thinker and will grasp complicated ideas through analogy many times. Programming is very much not visual, and seems to be quite literal in its application. So maybe that's the disconnect. I understand the concepts just fine. I can totally understand what the code is supposed to do, and what the end result should be. I just can't look at the code and understand how it's getting me to that result. Anyway, thanks for the advice/feedback. I'll just keep chipping at it I guess lol.
  10. Hello all, So I've hopped into trying to learn Lua scripting a few times now, watching videos, reading documentation and even having a Skype-based tutorial with Rick from the forums here. Videos and Documentation are either super-specific, or too generalized and lack context. Training with Rick is great and he's explained a lot of things to me. However, I find that I like to have a way to sorta "rewind" or "read back" through something if I'm not certain how it works, or what to do, etc. A real-time tutorial is great, but it lacks that "rewind/read-back" option - I doubt Rick wants to be available at any/all times to recap or repeat something we've discussed in a previous lesson . I've read through the Lua documentation here and find that, while I'm able to absorb the earlier sections just fine, from the bit about "Tables" and on, I'm losing the plot lol. I think how I would learn best, is to have tutorials that are specifically project-based, preferably staring off basic, and building from there. I'd like to be able to rewind, or read-back through bits that don't click with me the first (or 2nd or 3rd or...) time, so I can re-read, or maybe re-do that part, 'til it sinks in. Most importantly I feel like the ability to do so at my own pace is really important, which is why I'd prefer written or video. Preferably written. In the Googling I've done, I can't seem to find anything that really fills that niche. I've checked Udemy and, interestingly, couldn't find anything based on Lua (possible opportunity there for any would-be instructors). I feel like Lua is something I can wrap my head around, but I feel like I need the training to be very organized and deliberate in its delivery and progression, as well as being specifically project-based. Not just "here's code that does a thing, and here's how you write it.. now on to the next topic..." Anyway, if someone has come across training like that, and can maybe point me in that direction, that would be awesome. Thanks!
  11. That's an interesting approach, blueapples. So basically, the main/hub area is always loaded, and only the area you're entering (dungeon, town, etc) is loaded on demand, then unloaded when you exit. That's an interesting approach. How large is your hub area, though? If I were intending to have a smaller size hub area (like, 2048x2048, maybe), I think that'd be more feasible. Perhaps with the 4096x4096 setup, it can be set up where its's broken up in to "regions", and then as you move within a certain distance of a region, it'll start loading in the assets for it. Similarly, once you move beyond the distance of another region, it begins to unload them. Further, regions can have sub-regions - like a marshy area within a larger forest, etc. I wonder if something like that could work. Hmm.. This is all programmerly stuff which I have no idea about. I was trying to get into programming, but I think I'm firmly rooted in the design/creative realm. I'd rather work with a programmer who already knows what they're doing when it gets to that stuff.
  12. Awww, well that's a bummer. But see, that's why I asked before committing myself to that. Well, maybe I can break things up by major regions then, and still keep somewhat larger areas where appropriate. Will just have to set up distant landmarks (mountains, etc) set up way off beyond the immediate zone to give that sense of continuity, and to give players a reference of where they are and which way to go. Thanks for the info!
  13. Hello! So, I'm working on early design work of a project. The game is an action-adventure, in the spirit of games like Zelda: Ocarina of Time/Twilight Princess, Beyond Good and Evil, etc. What I'd like to do with the world design, is to have a single massive "hub" area, from which smaller areas, like dungeons, cities, towns, and such, will connect. I'd like the main "hub world" portion to be as large and seamless as possible. I've done some tests on a 4096x4096 terrain map, based on a mock-up heightmap exported from L3DT. I can say, definitively, that even with things like lakes, mountains and other obstructions subtracting explorable space from it, there will be more than enough world to make this feasible, while fitting the different areas/regions/environments the player will travel through. Setting the move speed to 1.5 for "walk" and "6" for the run multipler (just so I could move around a lot faster when I wanted) I was wandering around the map I put together for a good 60 minutes, and it just never ended. I loved it. Anyway! Before I get my hopes up and begin designing, I want to make sure of something. Obviously the heightmap is LoD'd, and the texturing is dynamic, so I shouldn't run into issues there. However, I'm concerned about assets. Because the map has to cover a wide variety of environments and biomes (forest, plains, desert, swamp, canyon, etc. etc), and each will require unique "asset kits", would this become an issue? Does Leadwerks load in all assets available in a given "map" at once, or might they be streamed in as they're required, and then "dumped" from memory when they're not? If not natively, I imagine such functionality could be coded in. Or, would it be best to separate the world into discrete, separate maps for each region? I'd like to keep loading screens to a minimum, used only when entering a dungeon, a city/town, etc.. but if a single large map isn't feasible, then that's just how it is. I'd just like to know ahead of time before I begin designing the world map, so I know how to lay the areas out with regard to how they connect (is it seamless, or would there be distinct locations where the player changes maps, etc). Sorry for the wall of text, and thank you in advance for any feedback!
  14. Hello, Just wanted to post about a couple possible/potential editor features that y'all might find interesting to implement, or at least look into. First, regarding bodies of water. I was working with the Leadwerks editor a bit, and having enabled the water plane, got to thinking in terms of "what if I wanted to add other water pools and such at different elevations? How would I handle that?" To my knowledge, LW doesn't have anything to support additional, specifically placed water bodies. I'm not sure if there's plans for that, but there's a couple systems I've seen that each seem to work really well. One approach is like they do it with the Neverwinter Nights 2 editor. You create a water body, set its height, and basically "paint" the water in. Here's a video showing it: Another approach is like they've handled it in the Unreal Engine (and maybe still do, I haven't messed with it much since 3). Basically, you create a water volume, which is a CSG-type object that you scale and place where you want the water to be. Anything inside this will be "underwater". Then you place a plane (flat, or animated) with the desired water shader/material directly above the volume. It creates a convincing enough effect. Another feature I've seen in other editors (and in Blender's sculpt tool, for that matter) is for terrain editing. It's a "pull" or "grab" function. Basically, you place the brush where you want it, left click and move the mouse, and it pulls just the area inside the brush up and down, effected as normal by your brush settings. This has proven very handy to have when tweaking small areas, especially if you can get down to the single vertex level. Other than that, I'd like to make a suggestion for something I'd like *not* to see - that is, a compulsory node-based material system. Mind you, I'm not totally against node-based material systems, I just don't like when that's the *only* way to create one. My ideal setup would be to have something like you have now - select the diffuse, the normal and other maps, and voila, you have a working material. But, then there's, perhaps, a "use nodes" button that can be pressed on a per-material basis, so you can then go in and do more complex material/shader editing if you wish. Or, if you change your mind, you just cancel the editing, and it returns to the basic material. I like the idea of node editors, I just hate having to first how to create a material if all I want to do is jump in and start editing something. Just thought I'd add that in
  15. Just to add to that.. Blender's (as of version 2.76b) FBX exporter has 7.4 Binary or 6.1 ASCII as its options. So, seems there's a problem with both of those versions.
  • Create New...