Jump to content

  • Log In with Google      Sign In   
  • Create Account

kburkhart84

Member Since 30 Jun 2004
Offline Last Active Yesterday, 09:25 PM

#5297380 How to make a monitor?

Posted by kburkhart84 on 20 June 2016 - 04:45 PM

I will provide a bit more detail, but it is Lactose! said.

 

1.  Make a new Render Texture in the project folder.

2.  Make a material, probably something either with an emission texture, or for texting purposes use the Unlit/Texture shader.

3.  Drag the Render Texture into the texture of the material.

4.  Make your plane(or if you already have UVmapped geometry) with that material, so you can see the render texture.

5.  Make another camera, pointing wherever you want it to.  Take the AudioListener component off of the camera so you don't get errors.

6.  On that new camera, drag the Render Texture onto the "Target Texture" of the camera.

7.  Profit?!?!

 

That is all I did, took less than a minute in my project to just add it in really quickly.  It even works and updates in the editor too.




#5297219 Breakout Animation for bricks.

Posted by kburkhart84 on 19 June 2016 - 10:24 AM

Instead of adding bricks to the list as they become visible, you could instead keep them all in the list like you have now, and simply have each one have a boolean variable for "visible."  Then in the render call, you would choose whether to actually draw or not based on that variable.  This way, each brick handles whether it draws or not.  This method comes in handy in the future as well, as you get used to each class handling its own affairs.  Technically, you have a bit of overhead calling those Render functions for them not to draw, but I think it is worth the organization purpose, and in this type of game it shouldn't affect anything anyway.




#5295553 C# and Unity for 2D Side Scroller

Posted by kburkhart84 on 07 June 2016 - 06:06 PM

Not having to learn a made up ecmascript variant is a start. The d-n-d editor is a joke if you plan to make anything more complicated than a dead-simple platformer. GM is terribad for working in teams as well, whereas Unity has settings that make it play nice with version control. Unity has nice tools for automating animation via state machines, good physics and collision that can be fine-tuned as you desire, and works with external editors so you can code in your own environment. The component-styled UI is powerful, and the way it exposes public script members so they can be edited from the UI - even during debugging - is great. The canvas system is more powerful for making and tweaking in-game menus and HUD elements. Unity supports custom shaders without tomfoolery. Both support a kind of object hierarchy, but Unity's is similar to a scene graph, which ends up being much more convenient.

 

Unity also has never decided to simply disable previous PAID versions of their software, leaving people stranded and unable to continue their work unless they upgrade to the new version and deal with the massive slew of breaking changes involved in that process.

 

GM can be used as a tool for people that are code-phobic so that they can overcome that phobia, and it's decent for prototyping, but for serious projects I'm just picturing hours upon hours of opportunity cost.

 

You make some valid points, but I wouldn't say the word "overwhelming" applies, although if you are doing bigger projects than it does indeed apply more.

 

About the script variant, it is just another language.  But due to it being "simple" it is actually much quicker to program things in than something like C#, where you have to remember rules like to add "new" keywords at times, among other things.  I've used plenty of both, so I feel I can actually judge here(not saying you haven't).  I totally agree with you about the d&d thing as well, and I've never taken the time to learn how to use it(since I already understood programming and was able to just learn GML right from the start). 

 

About the team thing...if you have used GMStudio, you will know things have changed in this issue.  Before GMStudio, projects were saved in one lump file, which is of course a big no-no for backups, versioning, etc... but now things are stored separately, and can freely be used with versioning software, etc...  I've even used Dropbox with it successfully, which I can't say about Unity, as I have to turn off Dropbox to not get errors in Unity.

 

I have no counter about tools that Unity offers for animation(Unity wins in this, the same as UE4 beats Unity on the built in tools side of things).  And I will say Unity's UI system(now that it finally came with 4.6 after much deliberation) is better than GM's though with GM you can get things up running quicker and easier, and Unity's whole d&d script/inspector/component system has some advantages too.  But sometimes those things just get in the way, forcing you to do things the Unity way instead of however you feel like.

 

About custom shaders...GMStudio has a nice shader system, without tomfoolery.  People have actually used it for 3d, including different shadow systems, deferred rendering, GPU skinning, and other things.  One of my favorites is a thing that let's you apply normal maps to sprites(you can create with something like SpriteLamp, draw manually, or render from 3d).  It makes 2d games look very nice.

 

About prices and version....Unity can't really say much about this.  I'm sure you know how Unity is suddenly doing a huge price increase and forcing subscription for the long run, which wouldn't be a problem if the pricing made sense like Adobe's does.  Also, I was using GM at the time the whole debacle with 8.0 and 8.1 happened, and I don't remember running into anything that kept me from wanting to upgrade to 8.1.  Yoyogames did not charge people for that upgrade either, and in general were up front and honest about it, and frankly had a good reason for the issue, getting rid of the DRM they had issues with.  Unity on the other hand, at this point announces a price increase at Unite like it is a good thing for the customers.  I'm currently subscribed to the $75 Pro subscription, and I will eventually have to pay $125 for a bunch of crap, like mobile exports, that I don't want.  So please....as far as the companys' actions, frankly they have both messed up in the past, but Unity is messing up right now pretty badly.

 

Last point...one strength that GMStudio has over Unity for the purpose of 2d games, is outright speed of development.  Despite the GML language that some people don't like, and despite the lack of the whole D&D/component/object inspector system that Unity has going that GMStudio does not have, GMStudio still manages to be able to get games developed much quicker than Unity, at least for me and many devs.  Those features that Unity has that make bigger/3d games easier to make just get in the way and slow people down for smaller/2d games.




#5295403 Top Down Ship (Boat) Movement

Posted by kburkhart84 on 06 June 2016 - 07:12 PM

You don't need physics to make this movement.  I'm not sure what the word "nonholomonic" is either.  The video just makes it look like you are moving like Asteroids, where you can spin in any direction, but only move forward(maybe backward) relative to what direction you are turned towards.

 

You need to make a decision on exactly how you want to do things.  If you want it to be exactly how I see it in the video, you will want to calculate movement yourself, or you can let GMStudio do it for you.  If you don't expect the ship to keep moving fast while you stop pushing the move button, you could easily just use the built-in movement that GMStudio provides.  There are 4 that probably really interest you.

 

image_angle-this one controls the rotation of your ship, but only the visual part.

direction-this one is the direction, but only for movement purposes.  The reason these are separate is because you could move in one direction while facing another if you wanted, like you see in some top-down shooters.

speed-this one is how many pixels per step the thing is moving, and it moves in the direction indicated in the direction variable.

friction-this one is exactly what it sounds like.  It slows down your object, nice and smooth, without you having to do anything with it.

 

So, in your code in your step event, you manually check your input, or you respond to key events.  You would increase/decrease your image_angle and direction.  I would think you want those to be the same in your game, as you are moving the same way you are facing.  You would also detect a thrust key the same way(either step event or key event).  And you would set the speed to however fast you want it.  If you want to have the smooth stopping, you would put a number on friction to make that happen automatically.  Then once you get the idea working, you tweak it how you want to make the speed right, and the friction, and how fast the turning happens.

 

I don't know how far you are with learning code, but eventually you will want to learn about player custom input, where the player chooses the keys the player wants to use.  I have a package on the market for it, as it is a big deal to me.  I'm not advertising it though, rather making sure you understand about it.  If you choose to respond to input events, it is going to be hard later to convert to those gamepads that you were talking about, and even more so to let the player choose inputs.  So, if possible, maybe it is a good idea for you to just do it all in the step event, as that gets you closer to that point, and easier to make changes once you learn how to implement gamepads and custom input(or buy a package that helps with that.)




#5295192 Game Engine to choose for mobile game development

Posted by kburkhart84 on 05 June 2016 - 10:00 PM

You specified 2d games for mobile.  I think Gamemaker: Studio is the best thing out there for 2d games.  Note that I did not include 3d, and in this case that means forget about 3d with GMStudio.  If you want 3d, I would suggest Unity, though if you have used UE4, you might be better off with that.  Note though that each one has certain limitations on size and performance.  My understanding is that UE4 isn't very performant on mobile yet, while Unity does pretty well generally.  But then for 2d only, GMStudio tends to be really performant.  And GMStudio has less overhead, not having to include any of the 3d things like Unity/UE4 do, making the installers smaller generally as well.




#5295187 [GameMaker:Studio] How to skip a frame after a code repeat

Posted by kburkhart84 on 05 June 2016 - 09:24 PM

Yeah, you are going about it the wrong way.  You will need to take the code in the repeat statement, and only run it once per frame in the step event.  You have the walking speed variable.  Since you didn't create it with the "var" keyword, it will stay around between frames.  So each frame, if walking speed is greater than zero, and you are not currently pressing the direction buttons to make it walk, then you can lower that speed.

 

Alternatively, there is a built-in friction variable.  If you use the built in movement, with vspeed, hspeed, etc... then you can simply make friction some value if you are not pressing a movement key, and it will automatically decrease your movement speed based on that.




#5295164 Right name for the game

Posted by kburkhart84 on 05 June 2016 - 06:26 PM

Anything I say here is not to be taken as legal advice.  I am not a lawyer.

 

I don't think it would be illegal, but does it make sense?  Would combining those 3 words make sense not only for the language but for your specific game as well?  The name "Angry Temple War" comes across to me like the temple's themselves are angry, and they are fighting.  Sure, it could be interpreted as angry people fighting over temples, or in temples, but it is a matter of interpretation.  Does your game fit any of that?

 

I know you were just using those 3 words as an example....but the point fits.  Unless something just happens to fit, I wouldn't name a game forcing words from other game names.  Also, I don't think it will help much with the searching, but I'm no expert on search engines so I could be wrong.

 

Part of the battle is indeed getting people to know about your game.  The other part is getting people to convert into buyers.  Assuming people search for Angry Birds, and somehow run across your game due to you using the word "Angry," do you think that will make them buy your game?  In my case, if I'm looking for Angry birds, but maybe I can't remember exactly what it's called, I type Angry into google.  Maybe I happen to run across your website in the search results, but I don't see myself clicking on it unless it somehow piqued my interest, because I'll see it and know right away it wasn't what I was looking for.




#5294982 What exactly is Unity for?

Posted by kburkhart84 on 04 June 2016 - 11:08 AM

I think some of the other posts made it clear.  Unity can do it.  Can you?

 

Every game engine has some limitations, and they may have things in some that are better than in other engines.  Unity is famous for being behind UE4 in graphics, while it is also famous for being easier to use than UE4.  But, as you are just starting out, you are very unlikely to run into any limitations of any game engine, even Gamemaker: Studio.




#5294197 Mobile Games

Posted by kburkhart84 on 30 May 2016 - 12:16 PM

Tangletail has it right in that you will need to understand game programming concepts in general, along with other things, such as art, music, sounds, design, etc..., though you can likely hire out any number of these things.

 

But, there are some tools that do things better than others, for example making your games easier to port to different platforms.  GameMaker: Studio(GMStudio) by Yoyogames is really good, but primarily for 2d games.  It has a price for mobile exports, but you can use the free version for windows in order to learn the software, and whether this is something you will be able to do, and if you even like the program.  Unity is king of the hill for 3d games(and it can be used for 2d as well, just not as well has GMStudio for that purpose).  It offers exports for free unless you make too much money, unlike GMStudio, though there are some conditions, like the splash screen.  It has a harder learning curve, and things are more complex than they have to be for some games, but you get a lot more power that way.

 

Either of these tools would be good to learn, one easier than the other.  They aren't the only options out there, though they are likely the best if you want to target multiple devices.  But they don't make your game for you.  You WILL have to learn not only the software you choose, but the other concepts I mentioned above.




#5292905 Confused About Frames Per Second

Posted by kburkhart84 on 22 May 2016 - 12:54 PM

1.  I assume your objects all are moving based on the deltaTime?!  If not, you will need to make that change because if not, things will move at different speeds on different computers.

 

2.  On the line "durationDouble time_span = currentTime_ - previousTime_;"  it seems like time_span would be the correct deltaTime.  I don't know what libraries you are using, and I don't know what time_span.count() is actually doing.  But I DO know that current-previous is generally how to get the deltaTime.




#5292892 Confused About Frames Per Second

Posted by kburkhart84 on 22 May 2016 - 11:51 AM

I honestly am not totally understanding the logic of that code.  I would instead just use the deltaTime and do a formula to get the FPS than to actually count frames.  It should just be a simple division.  You need to get the deltaTime in either seconds(likely 0.xxxx) or in miliseconds.  Then use either 1 second or 1000 milliseconds and divide by the deltaTime.  That gives you how many "deltaTime" there is in a second, which happends to be frames per second.  Now, you may want to add on some "smoothing" and/or averaging things out, but that gets you started.

 

Also, I would pay attention, maybe more attention, to the deltaTime itself.  Some people find it easier to understand the numbers with that, because it is directly saying how many MS the frames are taking, so it is more direct.




#5292889 Where can I get this type of models?

Posted by kburkhart84 on 22 May 2016 - 11:38 AM

Turbosquid has lots of free stuff too.  And textures.com (formally CGTextures) also has tons of free stuff.

 

vstrakh has it right though.  It is sometimes more challenge to find and make things fit your game than to just make it yourself.  The reality is that art isn't as hard as it seems.  Now, GOOD art is much more difficult, as in what dedicated artists do.  But "acceptable" for an indie gamedev type art is much easier to do.  I personally have gotten better at using 3d software to create my art, because it was easier for me to learn the technicalities of 3d space and Blender's GUI, and letting the renderer do the lighting and shading, than for me to learn anatomy, coloring, shading, lighting, etc...  Other people are better at different methods, like pixel art, or using vectors...to each his own.  But the point is that if the game's art is all the same style, and is done at an "acceptable" quality, though not necessarily great, it is OK.  Also, programmer art is good enough to get the game going, and then if you find it takes off commercially, you may suddenly be able to pay for one of those dedicated artist gods to redo the graphics for you.




#5292883 Can't get enemy shoot at a certain point in game maker studio

Posted by kburkhart84 on 22 May 2016 - 11:08 AM

All you need to do is change the counter amounts.  Right now the code(in the pictures) has it going to 360.  If you have the room speed at the default of 30, it will change in 12 seconds.  If you have it set to 60(which I like better, as it is much smoother), it is only 6 seconds.

 

There is a built-in variable for the room speed.  You can use it.  So if you want 10 seconds worth of steps, multiply 10 by the room speed variable.  If you want 1 minute, multiply 60 twice(preferably in the same line).  This way, if you change the room speed later, you don't have to come back and change this code at all.  It is a lesson you should learn, basing calculations on constants and variables so that if you have to make a change, it is only in the one place.  For example, that array for the bullet speed.  If you want to change it, you only change it there, and any other thing that needs it can access it.  That is a lot of the point of controller objects.

 

Side Note:  I'm going to be getting back into GMStudio I'm thinking.  I DO like Unity and 3d for projects, but I'm finding out that things take longer to get done, including coding(not just the graphics).  One limitation of GMStudio that I didn't like was how with GML code, you declare variables in the create event, but then have to remember exactly how you named them when you use them in other events.  You don't have that problem in Unity as the script events are all on the same page, and you have intellisense for your own variables too.  GMStudio does intellisense, but only for built-in stuff, and resource names, and constants, but not for declared variables.  The 3rd party Parakeet IDE changes that, and a lot more.  I'm doing the 7 day trial of it and would likely buy it and use it.  It fixes my one biggest complaint with GML.  If you are interested in what I'm doing, I'll share.




#5292408 Can't get enemy shoot at a certain point in game maker studio

Posted by kburkhart84 on 18 May 2016 - 09:35 PM


obj_bullet:
 
 
vspeed = 4;
 
collision of obj_block:
 
instance_destroy();
 
Anything else?
 
I assume that the vspeed = 4 is the creation of the bullet.  This is where you use the '.' syntax to access the variables of the objController object using the line of code...
 
vspeed = objController.speedarray[objController.difficulty];
 
This does assume that you have an instance of that object in the room.



#5292380 Help creating sprite sheet

Posted by kburkhart84 on 18 May 2016 - 05:34 PM

The free version of GMStudio I believe handles the sprite rotating.  It appears now that they are more like Unity, with the free version being the complete engine, but forcing splash screen and not having all exports.  So, unless the lighting/shading is different on the sprite, you are better of just having the single frame(make it point right so it is at what GMStudio calls 0 degrees rotation), and then rotating it during gameplay.

 

I would have to see exactly what you mean by "sliding around."  If it was an issue with sprite offsetting due to rounding numbers or similar, then the ship would likely be jerky, shaking around instead of a sort of smooth sliding.  You might also run into issues with having it "split" into pieces due to it drawing the middle of the sprite.  Since I don't know exactly what is going on, it isn't easy to comment.

 

Another thing I can recommend that I always did when using GMStudio...I keep my sprite frames as separate PNGs, at least for the importing step.  If you are using some software that keeps all the sprite frames in a single file(like Pro Motion, Graphics Gale, and others), then when you export, export separate frames instead of a sprite sheet.  Just put them all into a single folder, and then when you import the sprite, select all the files.  This will ensure you not only have the hassle of checking what sprite offsets to use, saying how many frames it is, etc... because it is easy to simply select all files with Ctrl-A then to remember for each sprite how many frames it is.  And since GMStudio does texture packing on its own anyway, you aren't losing performance because the sprites are getting packed into atlas textures/sheets when you run the game(and when you build it).






PARTNERS