Jump to content

Chris Vossen

  • Content Count

  • Joined

  • Last visited

Community Reputation

53 Excellent

About Chris Vossen

  • Rank
    Software Engineer
  • Birthday 04/12/1988

Profile Information

  • Gender
  • Location
    Sacramento, California

Recent Profile Visitors

10,622 profile views
  1. Hello Leadwerks Community! In the game industry everyone is always shuffling around between companies as projects reach different stages of development. Since my senior year of college I have been striving to get on board a production team. So, when Telltale offered me a production internship I jumped at the chance. One of my favorite parts of the transition is that Telltale uses Lua as their scripting language so if I ever run into a production problem that involves scripting I could always jump in and investigate their code! I loved my time at Leadwerks from day drinking with Josh while coding to running our GDC booth. It has been truly amazing. I also wanted to say farewell to the Leadwerks community, you guys have been the most intelligent and professional online community I have ever seen and without you guys Leadwerks would not exist. Thank you all for all the content that you've put up. Seeing games created with the engine make it all worth while. Farewell for now (I am still constantly going check the blogs), Chris Vossen P.S. I can't wait to see Leadwerks on Steam and all the future games that are going to come out of LE3!
    1. Show previous comments  1 more
    2. gamecreator


      Pushing that AAA artist was totally worth it. Those arrows look great!

    3. Chris Vossen

      Chris Vossen

      Haha those "lovely" things are programmer art. I'm not sure what AAA quality arrows would look like.

    4. shadmar


      looks good :)

  2. oops Rastar you are completely correct. When I said: I should have said C++ programming in Leadwerks, ie how to escape (or enhance) component based programming. Kennar- I agree that all the tutorials should be housed in one spot, so you don't have to scrounge around the forums. As for pdf's we'll have to see about that (although I'm pretty sure there are tools or scripts out there to turn webpages into pdf)
  3. I will make sure to cover the generic knowledge as well.
  4. Between the release of LE3 and the GDC, life at Leadwerks has been busy to say the least. Now that things have settled down (a little) it is time for something that I have been looking forward to for a while: Tutorials! At GDC we were constantly talking about the power and flexibility that direct native code programming allows and how users are not locked into only component based programming. But then you look at the example game Darkness Awaits and see only component based programming and just Lua scripts.... It's time to right these wrongs. A comprehensive series of tutorials are underway that will teach how to use the many tools of the engine as well as demonstrate the capabilities of direct native code programming. This series is currently in the design phase and I am working with universities to make sure that the tutorials not only teach the engine but also cover key game development topics. Here are a few high level design points for the tutorials: Teach the engine and its tools C++ programming First Person Shooter As always I'd love to hear suggestions and ideas! I'll keep updates coming as tutorial development ramps up!
  5. Check out GetTexture: http://www.leadwerks.com/werkspace/page/documentation/_/command-reference/material/materialgettexture-r125 then change of the texture.
  6. I'm a little confused as to the exact nature of the prefab factory. Are you trying to input a prefab name and destination and then have a function that when called will load a prefab at that destination?
  7. Prepping for GDC

    1. Rick


      I just want it to be done already so you guys can get back to the community :)

    2. AggrorJorn


      I agree with Rick, but GDC will important for feautere customers. Have fun.

  8. I'm currently planning out a multiple week "Let's build a FPS" tutorial. It will be a series of tutorials wherein each week I will cover a new subject (movement, lighting, dealing with assets... etc) resulting in the final outcome of fully playable FPS. More to come on this!
  9. I'm just going to quickly post these 2 bits of code: Top Down Camera: Script.target = nil--Entity "Target" Script.distance = 10--float Script.debugphysics = false--bool Script.debugnavigation = false--bool Script.pitch = 20--float Script.height = 10--float function Script:Start() if self.target==nil then return end --debug functions for viewing physics or navigation in game self.entity:SetDebugPhysicsMode(self.debugphysics) self.entity:SetDebugNavigationMode(self.debugnavigation) --Set the camera's rotation self.entity:SetRotation(self.pitch,0,0) end function Script:UpdatePhysics() --Exit the function if the target entity doesn't exist if self.target==nil then return end --Get the target entity's position, in global coordinates local p0 = self.target:GetPosition(true) --Calculate the new camera offset local offset = Vec3(p0.x,p0.y+self.height,p0.z-self.distance) --Add our original offset vector to the target entity position p0 = offset self.entity:SetPosition(p0,true) end Character movements: (on a goblin model) Script.camera = nil --Entity "camera" --Define animation sequences Script.sequence={} Script.sequence.walk=5 Script.sequence.idle=6 function Script:Start() self.currentyrotation = self.entity:GetRotation().y self.modelrotation = -90 App.window:ShowMouse() end function Script:UpdatePhysics() local window = Window:GetCurrent() local move = (window:MouseDown(Key.LButton) and 1 or 0) local playerscreenpos = self.camera:Project(self.entity:GetPosition(true)) local mousescreenpos = window:GetMousePosition() local vectorbetween = mousescreenpos - playerscreenpos self.currentyrotation = Math:ATan2(vectorbetween.y, vectorbetween.x) + self.modelrotation self.entity:SetInput(self.currentyrotation,move,0) if move ~= 0 then self.entity.animationmanager:SetAnimationSequence(self.sequence.walk,0.04,200) else self.entity.animationmanager:SetAnimationSequence(self.sequence.idle,0.05,200) end end To understand the code basically Math::ATan2 finds the angle between the mouse and the player Camera::Project takes the character position in global space and converts it to screen space.
  10. To do: Add in a Lua tag and create a documentation page.
  11. So the proper way to do it is a call to World:Clear(), unfortunately we forgot to tag it for lua (and document it). I'm posting a bug report for this right now and hopefully the lua tag (and documentation) will be available with the next build.
  12. This is a slippery bug (it is really hard to recreate), that we thought we had pinned down. Make sure your current LE3 copy is up to date (Click on the update button on the installer) and we will check it out.
  • Create New...