How to enable fullscreen when pressing a key in LibGDX - libgdx

Hello kinda new to LibGDX and currently having issues with the fullscreen mode on pc, what i'm trying to do is set my game to fullscreen whenever someone presses a key and this doesn't do anything whenver i type something in the main method in desktopLauncher.java. And importing the LwjglApplicationConfiguration class in the core map doesn't work because it isn't available there for some reason.

I tested the answer provided by PandaBR on this question and it works.
https://gamedev.stackexchange.com/a/119867/81956
Put this in the render method of your main LibGDX / Game class (not DesktopLauncher). Change "Input.Keys.TAB" to be the key you want to toggle your program in and out of full screen mode.
if (Gdx.input.isKeyPressed(Input.Keys.TAB)){
Boolean fullScreen = Gdx.graphics.isFullscreen();
Graphics.DisplayMode currentMode = Gdx.graphics.getDisplayMode();
if (fullScreen == true)
Gdx.graphics.setWindowedMode(currentMode.width, currentMode.height);
else
Gdx.graphics.setFullscreenMode(currentMode);
}

Related

Tiled map not rendered fully

I'm using cocos2d-x 3.17. When I run a Follow action on a sprite, the tiled map can't render fully. The map looks exactly the same as the screen record shows in posts below
https://discuss.cocos2d-x.org/t/1-5b2-tiled-map-not-rendered-fully/36661
https://discuss.cocos2d-x.org/t/solved-tilemap-rotation-clipping/37114
But they were using Cocos Creator and can fix it by setting ENABLE_TILEDMAP_CULLING = false.
Is there any equivalent settings in C++ api?
Found out the root cause is that the Scene has been moved by Follow action. It seems in cocos2d-x, Scene is not supposed to move.

How create fully responsive html5 game using Phaser library?

I'm using Phaser 2.5.0 (tried 2.4.8 also) and I'm trying to create fully responsive game using phaser library.
Everything is ok when I refresh page, here is image:
but when I change rotation to portrait dialog message is not ok, image:
When I refresh page using portrait mode I get ok dialog:
So problem is when I resize browser window.
Here is code for init phaser game:
var game = new Phaser.Game(window.innerWidth, window.innerHeight, Phaser.AUTO);
Tried also:
var game = new Phaser.Game("100%", "100%", Phaser.AUTO);
Here is create function located in main.js:
create: function(){
console.log('create');
this.game.antialias = true;
this.game.stage.smoothed = true;
this.input.maxPointers = 1;
this.scale.scaleMode = Phaser.ScaleManager.SHOW_ALL;
this.scale.minHeight = 0;
this.game.time.advancedTiming = true;
},
So to tell again problem is when I resize browser window but when I do refresh then it's not working ok. Game must support resize.
Here is one simple example which is giving almost same result, on refresh is ok but when doing resize is not ok: https://jsfiddle.net/CroDac/tv010u0t/
Thank you
There was/is an old, but apparently not fixed, bug in iOS that caused (causes?) this. There are several workarounds on the net, on of them is here:
https://github.com/scottjehl/iOS-Orientationchange-Fix
From the description:
This fix works by listening to the device's accelerometer to predict
when an orientation change is about to occur. When it deems an
orientation change imminent, the script disables user zooming,
allowing the orientation change to occur properly, with zooming
disabled. The script restores zoom again once the device is either
oriented close to upright, or after its orientation has changed. This
way, user zooming is never disabled while the page is in use.
Maybe this can help you....

Adobe Air - Starling/Features | Controls and device simulator

I have few questions here, regarding creating app in Adobe Air using Starling and feathers.
I created yet a very simple app, which has Feathers list controller with static data provided to its dataProvider. According to the code it should work fine, but there are three major issues I am facing.
1: Touch/Click Positions
I am using:
list.addEventListener( Event.CHANGE, list_changeHandler );
Now the problem is, clicking coordinates are not correct. Clicking on 3rd Item triggered 4th item, to trigger 3rd, 2nd item needs to be clicked it's half way through etc.
2: Nothing, without Theme
I am using a custom theme, came along with a tutorial. If I don't use the theme, I am unable to see anything on the screen, somehow.
3: Resolution (Device Simulator) Problem
Though buggy, but it works with Theme, but my app doesn't fit with the resolution for each device simulator. Either its, iPad or iPhone 4 or any android simulator.
Also, can anyone please also explains, what is significance and use of Context3D render mode in starling class.
Any help is appreciated:
Thanks in advance
Waqar Iqbal
Starling is a Stage3D framework that displays content directly on graphic card using Context3D. Everything displayed by Starling is always under the regular display list. Feather is a component framework based on Starling.
Stage3D cannot handle any mouse operations so Starling and Feather simulate all their mouse event (those mouse event never really happen anywhere, they are created by calculation of mouse position on the stage)
not sure, never used Feather
Starling does not handle screen density and dpi calculation, if you want your app to fit any screen you'll have to handle it yourself.
I think you should see the example carefully. if u want to use any feathers component either you have to use feathers theme or custom theme.
if you use feather theme you need to provide theme path and before using any component you need to initialize that theme.Then use component any where.without theme you will not see any thing.
1: Touch/Click Positions
please provide minTouchHeight in class theme of DefaultListItemRenderer like:-
renderer.minWidth = this.gridSize;
renderer.minHeight = this.gridSize;
renderer.minTouchWidth = this.gridSize;
renderer.minTouchHeight = this.gridSize;
2: Nothing, without Theme,
3: Resolution (Device Simulator) Problem
Follow the example given in feather library
feathers-2.1.1\themes\MetalWorksMobileTheme\source\feathers\themes

Multi-touch on Robovm using Libgdx

I'm using libgdx 1.4.1 and robovm version 1.0.0-alpha-04.
I enabled Stage input by using : Gdx.input.setInputProcessor(stage);and added two buttons to the screen that should be touched together.
When the first button is touched down the TouchDown Method return true but when trying to touch the second button (while keeping button one touched down) I get nothing.
How do I get it to work ?
To solve this issue just enable multiple touch on your view.
viewController.getView().setMultipleTouchEnabled(true);

AS3 AIR in app loading screen

I was wondering if someone could share some thoughts about how best to implement an in app loading screen.
I am building a mobile app using Starling and Feathers UI for iOS and Android and some times when a menu item is clicked to go to a new page it takes a few seconds due to the components that are on the stage on the called page. I would like to display a generic 'loading...please wait' screen which will have a message and a loading spinner which will be shown every time a new page is requested.
Thanks
This is how it's actually done, while you're directing your user to the frame, you make the loader MovieClip visible, the loader movie clip is a simple animation, like this:
loader http://www.pockettorah.com/wp-content/app/images/loader.gif
Make a movieclip and in instance name name it loader, and animate it like above
At the top of your code, say loader.visible = false;
In your code, after gotoAndStop/gotoAndPlay or whatever, say loader.visible = true;
There is no real way of displaying this, usually it's just a fake animation that displays while the data is being processed.
Its called a splash screen, it can be a simple jpeg. Adobe help here