• Announcements

    • khawk

      Download the Game Design and Indie Game Marketing Freebook   07/19/17

      GameDev.net and CRC Press have teamed up to bring a free ebook of content curated from top titles published by CRC Press. The freebook, Practices of Game Design & Indie Game Marketing, includes chapters from The Art of Game Design: A Book of Lenses, A Practical Guide to Indie Game Marketing, and An Architectural Approach to Level Design. The GameDev.net FreeBook is relevant to game designers, developers, and those interested in learning more about the challenges in game development. We know game development can be a tough discipline and business, so we picked several chapters from CRC Press titles that we thought would be of interest to you, the GameDev.net audience, in your journey to design, develop, and market your next game. The free ebook is available through CRC Press by clicking here. The Curated Books The Art of Game Design: A Book of Lenses, Second Edition, by Jesse Schell Presents 100+ sets of questions, or different lenses, for viewing a game’s design, encompassing diverse fields such as psychology, architecture, music, film, software engineering, theme park design, mathematics, anthropology, and more. Written by one of the world's top game designers, this book describes the deepest and most fundamental principles of game design, demonstrating how tactics used in board, card, and athletic games also work in video games. It provides practical instruction on creating world-class games that will be played again and again. View it here. A Practical Guide to Indie Game Marketing, by Joel Dreskin Marketing is an essential but too frequently overlooked or minimized component of the release plan for indie games. A Practical Guide to Indie Game Marketing provides you with the tools needed to build visibility and sell your indie games. With special focus on those developers with small budgets and limited staff and resources, this book is packed with tangible recommendations and techniques that you can put to use immediately. As a seasoned professional of the indie game arena, author Joel Dreskin gives you insight into practical, real-world experiences of marketing numerous successful games and also provides stories of the failures. View it here. An Architectural Approach to Level Design This is one of the first books to integrate architectural and spatial design theory with the field of level design. The book presents architectural techniques and theories for level designers to use in their own work. It connects architecture and level design in different ways that address the practical elements of how designers construct space and the experiential elements of how and why humans interact with this space. Throughout the text, readers learn skills for spatial layout, evoking emotion through gamespaces, and creating better levels through architectural theory. View it here. Learn more and download the ebook by clicking here. Did you know? GameDev.net and CRC Press also recently teamed up to bring GDNet+ Members up to a 20% discount on all CRC Press books. Learn more about this and other benefits here.
Sign in to follow this  
Followers 0
Shoot Em Games

Real Time Menu for Game

17 posts in this topic

Hi there,

 

I'm wondering how I would make a Real Time Main  Menu for a game? What program? (Free, Please)

 

It's gonna have a lot of animations when loading a new option...

 

 

 

Thanks,

Shoot Em Games

0

Share this post


Link to post
Share on other sites

If you don't know how to make a menu then you don't know how to make a game.

Actually, I do know how to make a menu. This question is for a real time rendering menu...

0

Share this post


Link to post
Share on other sites

Essentially just look at the menu as an alternate state for your Update and Draw features.  I.e. If!InMenu - then draw the game, else draw the menu.  Then you have your menu show up as you would any other gameobjects, and your updates/interactions are just focused on presenting the menu now.

 

If you're talking about a particular engine, like Torque, GameMaker or Unity, there maybe some options to purchase an interesting menu system, but you need to include what engine your talking about.

Thanks, but I'm asking about a real time rendered menu...

0

Share this post


Link to post
Share on other sites

I'm wondering how I would make a Real Time Main Menu for a game? What program? (Free, Please)

 

This isn't a Game Design question, so I'm moving it to For Beginners.

0

Share this post


Link to post
Share on other sites

If you don't know how to make a menu then you don't know how to make a game.

Actually, I do know how to make a menu. This question is for a real time rendering menu...

 

What does that mean?  Is there a type of menu that's not "real time"?

0

Share this post


Link to post
Share on other sites

If you don't know how to make a menu then you don't know how to make a game.

Actually, I do know how to make a menu. This question is for a real time rendering menu...

Actually, I believe that you seems to know how to use an API that provide menu components... You don't seem to understand that your "menu" is just another game element that is managed like other game elements and displayed if your game state tells that it should be displayed.

0

Share this post


Link to post
Share on other sites

Actually, I do know how to make a menu. This question is for a real time rendering menu...

 

Several people have asked this, but I'm interested too.  

 

What kind of menu do you create that is not *real-time*?  Why is it not?  Are you creating menu's that some how have lag?

 

And what do you think makes a Real-Time menu?  I'm guessing that your just not asking your question in a way that anyone understands.  Real-time, is a common term.  According to Wikipedia, "Real-time programs must guarantee response within strict time constraints."  And so when we create menus, we typically expect a response to the players actions to be instant. I.e. when the player clicks, there is no perceivable time that passes before the program reacts and either begins its animations to the next menu or immediately displays the next menu or what ever other task was expected.

 

 

The only thing I can imagine, is that your menus are somehow resolved based on Client/Server interactions.  I.e. you see lag/loss of real-time because of the network delays.  If that is the case, you should make sure that your client side has all the menu's it needs immediately, and that additional network based options load after the view is already visible.  Or, in a separate thread, download the menu options (for the menu items available to click) behind the scenes so that if it is clicked, it already has its content on the way.  and if you click something else, stop the loading threads that aren't associated with the new menu.

 

 

 


Essentially just look at the menu as an alternate state for your Update and Draw features.  I.e. If!InMenu - then draw the game, else draw the menu.  Then you have your menu show up as you would any other gameobjects, and your updates/interactions are just focused on presenting the menu now.

 

If you're talking about a particular engine, like Torque, GameMaker or Unity, there maybe some options to purchase an interesting menu system, but you need to include what engine your talking about.

Thanks, but I'm asking about a real time rendered menu...

Again, if you are expecting to purchase a component for this, you need to include what engine or language you are developing your game in.  HTML?  Silverlight, Unity, GameMaker, C++, Java, etc...?  Any menu components that exist are typically dependant on that information at least.  But honestly, most people just develop their own, as the menus are far easier than the rest of the game development.

 

 You may also want to consider where you are spending your time and money on this project.  Unless the 'fun' of your games is in the menu system, you should really just put the easiest/most obvious thing in for it, and spend your time on the components people will play.

Edited by Dan Violet Sagmiller
2

Share this post


Link to post
Share on other sites

Actually, I do know how to make a menu. This question is for a real time rendering menu...

As mentioned, all GUIs (including menus) are either real-time or event-based. For event-based menus, you use a GUI toolkit like Win32, Qt, or another.
For real-time menus (like what 99.9% of games require), you make them yourself and treat them similar to any other game object in your game.
 
I suspect you are accidentally drawing your menus outside your rendering loop, so they don't get redrawn.
 
This is probably a communication issue because of different lingo we are using. Why don't you post an example of your working, non-realtime, code, and we'll tell you where to go from there? We might not all speak using the same terminology, but we all speak computer code.
 
What language are you using? Our answer will change depending on your chosen language. What APIs/third-party-libraries are you using to draw graphics on-screen? Our answer will also change depending on that.
 
Finally, what is a small working example of your existing non-realtime menu? We don't need an entire project, just the main loop and the functions involving the menu. We want to help you, but sometimes it's a bit difficult for us to understand someone's problem without seeing at least part of their code.
2

Share this post


Link to post
Share on other sites

Well, 

 

I understand. 

 

Let me explain it further.

 

I want to make a menu intro where waves wash up onto a beach while cam is faced down on the sand and wash back down leaving behind the options.

Then when an option is clicked, it washes the current menu away and comes back with the new option. I hope this explains the question i'm asking..

 

 

Oh, and Sorry! Didn't really understand the concept of Real Time.

0

Share this post


Link to post
Share on other sites

There is definitely no pre-built library for that and is something that has to be custom-made.

 

Is the beach scene a 2D image or a 3D scene? If 3D, you have to already know 3D programming. If 2D, you have to already know 2D programming.

 

Here's one possible way using gamestates:

Game starts up, or player returns to main menu:

PushGameState(GameState_Menu_Front) //Push the proper page of the menu onto the GameState stack.

PushGameState(GameState_OceanSlideInAndOut) //Push the ocean animation onto the stack over the menu.

 

When the OceanSlideInOut animation finishes, then it pops itself from the stack, leaving GameState_Menu_Front the topmost state.

GameState_Menu_Front has the menu buttons of the front page of the main menu, including buttons like "Options" and "New Game".

 

When "Options" is seleted, GameState_Menu_Front pushes "GameState_Menu_Options" and then pushes "GameState_OceanSlideInAndOut" again.

When the GameState_OceanSlideInAndOut is finished, it pops itself leaving GameState_Menu_Options at the top.

GameState_Menu_Options has buttons like, "Video settings", "Sound settings", "Player controls", and so on.

 

When "Sound settings" is pressed, GameState_Menu_Options pushes "GameState_Menu_SoundSettings" and "GameState_OceanSlideInAndOut" ...

GameState_Menu_SoundSettings also has a button called "Back", or "Return to previous", or whatever. When clicked, instead of pushing the previous GameState (which is already on the stack underneath GameState_Menu_SoundSettings), then it just pops itself, leaving the previous GameState at the top of the stack, and pushes GameState_OceanSlideInAndOut again.

 

Each gamestate might have Update(deltaTime), Draw(), HandleInput(), or similar functions to handle their own functionality.

 

That's one way you could handle the logic. Which part of the menu are you specifically having trouble with? The logic? The drawing? The buttons functioning?

1

Share this post


Link to post
Share on other sites

There is definitely no pre-built library for that and is something that has to be custom-made.

 

Is the beach scene a 2D image or a 3D scene? If 3D, you have to already know 3D programming. If 2D, you have to already know 2D programming.

 

Here's one possible way using gamestates:

Game starts up, or player returns to main menu:

PushGameState(GameState_Menu_Front) //Push the proper page of the menu onto the GameState stack.

PushGameState(GameState_OceanSlideInAndOut) //Push the ocean animation onto the stack over the menu.

 

When the OceanSlideInOut animation finishes, then it pops itself from the stack, leaving GameState_Menu_Front the topmost state.

GameState_Menu_Front has the menu buttons of the front page of the main menu, including buttons like "Options" and "New Game".

 

When "Options" is seleted, GameState_Menu_Front pushes "GameState_Menu_Options" and then pushes "GameState_OceanSlideInAndOut" again.

When the GameState_OceanSlideInAndOut is finished, it pops itself leaving GameState_Menu_Options at the top.

GameState_Menu_Options has buttons like, "Video settings", "Sound settings", "Player controls", and so on.

 

When "Sound settings" is pressed, GameState_Menu_Options pushes "GameState_Menu_SoundSettings" and "GameState_OceanSlideInAndOut" ...

GameState_Menu_SoundSettings also has a button called "Back", or "Return to previous", or whatever. When clicked, instead of pushing the previous GameState (which is already on the stack underneath GameState_Menu_SoundSettings), then it just pops itself, leaving the previous GameState at the top of the stack, and pushes GameState_OceanSlideInAndOut again.

 

Each gamestate might have Update(deltaTime), Draw(), HandleInput(), or similar functions to handle their own functionality.

 

That's one way you could handle the logic. Which part of the menu are you specifically having trouble with? The logic? The drawing? The buttons functioning?

It's not the programming. It's HOW do i design the ocean? I know the programming for it, but the animations for it? I'm not necessary sure about that.. I don't know what program would best suit me.

0

Share this post


Link to post
Share on other sites

That can be done in a number of ways, and almost seems like an art question.

 

You can use algorithms to manipulate pixels, like this (the concept applies to many languages and APIs, not just C++ with SDL).

You could use basic frames of an animation where you go from Frame 1 to Frame 2 to Frame 3, and so on.

It might even look fine just to have a static image move down the screen and then back up, depending on the style you are looking for.

Or you can use another method like playing a video (which can get more complicated, especially when you want your menus to appear underneath the waves).

 

That's assuming 2D. For 3D ocean waves, then you could google "OpenGL ocean wave simulation" (or DirextX if you're using that) where there are plenty of resources and discussions on many different methods.

 

When you say 'design', are you talking about how it should visually look, or how it should programmatically move?

You might have better luck creating a new thread about the art in the Visual Arts subforum, if you're asking how you can draw ocean waves or if you're asking about what art programs to use - those gentlemen would know better than I.

 

Otherwise, I just can't comprehend what you're asking. Maybe I'm just thick. smile.png

Is this a programming question?

Edited by Servant of the Lord
0

Share this post


Link to post
Share on other sites

To me this seems like an art question rather than a programming question. The easiest way to do such a thing would be through animations and have your menu system play the animations when appropriate.

 

Two possibilities are Adobe Flash to make vector based graphics (which isn't a free program but there are programs like Victorian Giotto which can also create flash animations), or Blender.

 

Personally I would probably choose to use Blender for this task. It is cross platform, open source, and free!

 

Blender has an Ocean modifier.

 

http://www.youtube.com/watch?v=uFblEEEKJBk

 

http://www.youtube.com/watch?v=Af6A1uvNhyM

 

Granted it will not be trivial to create this in any program.

Edited by shadowisadog
0

Share this post


Link to post
Share on other sites

it seems you need 2 things.  

 

1), you need to learn how to get water/waves in your game at all.  @Servant of the Lord and @Shadowisadog have both provided some excellent starting points for that.  

 

2), is simply how to separate your Update/Draw functions at the root of your game.  (presuming you understand the idea of loading, and then repeating the Update then draw methods for the duration of the game.)

 - What I will typically do, is setup a variable somewhere, called "bool InMenu = false;"  

 - Each section of my game will be split up for processing, so I might have background.update(), units.update(), shots.update(), foreground.update(), etc...  and then .draw() for each as well.

 

Then, in my Update method, I would have "if(InMenu)"

background.update(); foreground.update(); menu.update();

else

background.update(); units.update(); shots.update();foreground.update();

 

 

Then, in my Draw method, I would have "if(InMenu)"

background.update(); units.update(); shots.update();foreground.update(); menu.draw();

else

background.draw(); units.draw(); shots.draw();foreground.draw();

 

When we are in the menu, I only process the things needed to keep the graphics updated, like the current wave position. but I'm also calling the menu update method.

The draw still draws everything, juyst including the menu.  

 

It sounds like what you need is that you would just re-point the camera at a spot with the waves.  However, you may want to consider letting it show what ever was happening at the point of pausing/starting the menu.  Because if you always want waves at the pause menu, your going to have to either reload a wave scene, which opens up lag points, or you would have to manage repointing the camera.

 

However, it sounds like all you want this for would be a starting menu.  and in that case, you just need the wave scene initially, which is fine.

0

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0