Android :: OpenGL ES Canvas ?
Jun 13, 2010
I'm working on an OpenGL ES game using the NDK. My min SDK version is 1.6. I have created an OpenGL Es 1.0 renderer in Java and am calling a native JNI method in that renderloop.
The problem I'm having is that it seems that the resolution of the rendering context is limited. When using the emulator I'm getting a rendering canvas of 480x320, which is fine. Now; when I use my HTC Desire I am only getting a canvas of 533x320 while the native resolution of this phone is 800x480px.
View 2 Replies
Dec 20, 2009
I have downloaded and run the SpriteMethodTest on my Droid but compiled to 1.6 Android. I am getting the very strange behavior that drawing bitmaps to *canvas* is faster than using OpenGL. At 100 sprites, I am getting about 64 fps for Canvas. For OpenGL, its around 34 fps.
I also ran the same test on the 1.6 emulator. 100 sprites came in at 30 fps for canvas, just 6 for OpenGL!
I was so astonished that I actually checked that the radio buttons were running the right tests.
View 2 Replies
View Related
Jun 18, 2009
My game runs fairly well on my phone, but i want to increase the performance by using opengl. However currently i use the Canvas. I am a beginner in opengl. I have to port all my drawing code to opengl. However can somebody give me directions. For example how do i do the following in opengl:
c.save();c.scale(0.3f+scale, 0.3f+scale, width/2, height/2) c.drawBitmap( bMsg.bitmap, width/2 - bMsg.bitmap.getWidth()/2,dy+height/2 - bMsg.bitmap.getHeight()/2, MESSAGE_PAINT);c.restore();
And why cant i just use Canvas as an abstraction layer (facade) for opengl. An implementation of canvas could call the correct opengl methods in order to render. Why do i have to port all my code. I thought the canvas was a good abstraction interface to a drawing surface, why do i have to bother with opengl? It looks like this is possible, when is see the following contructor: "public Canvas (GL gl)" Also the this seems usefull. SURFACE_TYPE_GPU Surface type: creates a surface suited to be used with the GPU So what should i do? Re implementing the GamePainter completely and call opengl functions directly? Or is there some kind of abstraction mechanism, so that i can use OpenGL with just a few lines of code?
View 4 Replies
View Related
Mar 17, 2010
I have a Bitmap object and want to render it to a Canvas object with varying levels of translucency (i.e. make the whole bitmap partially see through). For example, I have sprites in a game (that are drawn over the top of a bitmap background) that I want to fade out from being opaque to being invisible. Can I do this without having to resort to OpenGL?
View 2 Replies
View Related
Mar 11, 2009
Greetings Developers,
I am just putting this question out there.
Is there a large efficiency difference between Canvas.drawBitmap or OpenGL. I am drawing using Canvas.drawBitmap and running slowing FPS, would openGL speed that up a lot you think?
View 7 Replies
View Related
Nov 6, 2009
Or does it merely provide more options for graphics?
View 2 Replies
View Related
Jun 15, 2010
I currently have a game written using the Android canvas. It is completely 2D, and I draw bitmaps as sprites on the canvas, and it technically works, but I have a few features that I need to add that will require drawing many more bitmaps on the screen, and there will be a lot more movement.
The app needs more power.
What is the best way to go from this method of drawing Bitmaps on a canvas to using OpenGL so I can draw them faster?
View 2 Replies
View Related
Jul 7, 2010
My loadMap() method generate a canvas.throwIfRecycled exception when i try to load a new map.
When i start the game, the initial map loads and work fine though,
its only when i try to load a new map that i get the exception ..
How can i "reset" canvas and the bitmap i use to draw into, so i can startover fresh with them ?
here's what i use to create and draw my maps:
CODE:.........
So basicaly once i created and used picDest and canvas, i cannot figure how to reset it all for when i want to load a new map..
View 1 Replies
View Related
Feb 25, 2009
Single Threaded OpenGL game ! (check bottom, you can download and use the helper class) Lighting disabled ! Depth Buffer disabled ! Culling enabled ! Textures disabled !
Just 176 integers (x,y values only) making 88 vertexes along with 132 index numbers making "44 triangles only"
Framerates I get is
with GL_BLENDING disabled - 145 fps approx only! enabled - 110 fps approx only!
I have the screenshot of exact code in the draw function here.. just 2 damn lines ! I have hidden only the comments.. click here to see it http://prasna991.googlepages.com/drawframe.png
variable details in the 2 lines of code =========================== ipts = 176 elements (only x and y for each vertex) totallinetriangles * 3 = 176 lineindexes = 132 elements - type "short"
Here is the screenshot of output drawing and how it will look like http://prasna991.googlepages.com/screen.png
OpenGL single threaded Initialization Helper ================================ Here is my OpenGL helper class.. makes the OpenGL initialization for newbies a cakewalk http://prasna991.googlepages.com/OpenGLHelperclass.txt
I tested by rendering on the touch event only.. frame rate drops only when u touch and drag and here I have just tested by tapping and releasing gently on the emulator and on the device
Is this the device limitations ? So graphics is actually a lot lot lot slower than on iPhone ?
View 8 Replies
View Related
Jul 24, 2010
I would like to be able to use the OpenGL API from both Java and C (via NDK).
In Java, there is a GL object passed, which has all GL methods on it.
In C, you just talk to the native library.
In a single onDrawFrame callback (for which Java is passed a GL), can I use methods on the GL object, and also call NDK methods which access the openGL library?
In other words, is the GL object just a wrapper for the same instance of the native library?
View 3 Replies
View Related
Apr 4, 2009
I'm trying to make an app that requires me to draw over a layout with buttons, etc. I want to build a transparent canvas over the current layout and draw onto that canvas. How is this done?
View 3 Replies
View Related
Oct 28, 2010
I'm making an App that needs to be able to draw new graphics on top of the last set.
This is my current onDraw() method -
protected void onDraw(Canvas canvas) {
canvas.drawColor(Color.WHITE);
if(points.size() > 0) {
//do some stuff here - this is all working ok
canvas.drawLine(p1.x, p1.y, p2.x, p2.y, linePaint);
}
}
Basically, I need to draw the new graphics as a layer on top of the last, so what I'm looking for is a way to carry the image of the last canvas to the current. I have tried to figure it out myself using the canvas.setBitmap() method but it acts very funny.
View 2 Replies
View Related
Oct 4, 2010
I want to copy the image drawn in one canvas (details) into another canvas. The commonly discussed solution of using bitmaps will not work because the Bitmap class does not have many of the important methods belonging to the Canvas class.
View 1 Replies
View Related
Aug 26, 2009
I have a View and that has a canvas. I am rotating the canvas, for rotating a bitmap. But after that, I need to draw one more bitmap on the Canvas and, this should not rotate. The second bitmap has to be static.
I tried with matrix rotation for bitmap. But its not rotating in the specified co-ordinates.
View 3 Replies
View Related
Apr 16, 2010
I have a view, I'm drawing with the Canvas object in the onDraw(Canvas canvas) method.
My code is:
CODE:....................
The problem is the text doesn't show through the background, what am I doing wrong? If I remove the canvas.drawPaint(paint) and paint.setColor(android.R.color.black) you can see the text on the screen.....
View 2 Replies
View Related
Mar 25, 2013
How I can show keyboar to write like text on canvas by soft keyboad?
View 4 Replies
View Related
Sep 22, 2009
I am doing a painting program (KIds Paint - you can find in Android Market) and I have a lot of requests to save the content on disk or to wallpaper. I have been searching around but cannot find solution. My guess is that I probably wanted to get the bitmap from the canvas, but I can't find ways to get it. Then I try to set an empty bitmap into the canvas and draw on the canvas, and save the bitmap... but I got an empty bitmap..........
View 7 Replies
View Related
Sep 5, 2009
Is it possible to convert a Canvas to Drawable?I may be really off in my solution, so if you have a better suggestion, please do tell me. This is what I'm trying to do.I'm trying to create a custom RadioButton. to set different states of the radio button, I need to use this parameter and one of the parameter to addState is Drawable. I know I can easily provide an image file and use it as a Drawable, but I want to do some image manipulation to the image before using it.There is a tutorial in ApiDemo called AlphaBitmap. It uses the onDraw method of a View to change a PNG file to full red and draw something with a gradient. So I customized it to shade an icon with gradient. So the problem now is that this is a View, and the View works perfectly fine if I add this View to the main view. But i want to convert this View to Drawable so I can use it as one of the parameter in addState. What I really want to achieve is to have different colour shades for different state of the RadioButton without providing different images to do so.
View 6 Replies
View Related
Sep 14, 2010
I have a Main_Overlay class that extends Overlay. I added This overlay to the mapview and override the Draw method as of below:....................
View 5 Replies
View Related
Oct 28, 2010
i'm trying to develop a simple pie chart class for android. For now, it can take a map of labels and values and draw the pie chart. I'm yet to add the legends for the pie, which is where i need to place the texts near small rectangles on the screen corner. Any help appreciated, since i'm new to Android dev.
View 1 Replies
View Related
Sep 2, 2010
I have a question that I wanted to put button and circle on the same canvas. How can I do this? Please give reply as soon as possible.
View 2 Replies
View Related
Sep 7, 2010
My requirement is to draw a line on canvas for every second. I am able to draw the line but its clearing the previously drawn lines when I call myview.invalidate(). Now my question is how to draw a new line retaining all the previously drawn line on the same canvas.
View 5 Replies
View Related
Jul 6, 2010
I have following example code:
Character c = CharacterFactory.getCharacter(CharacterEnum.SpecialCharacter); //factory has applicationContext reference to get bitmaps from R. ... Paint bitmapPaint = new Paint(); ... View::onDraw(Canvas canvas) ... canvas.drawBitmap(c.bitmap(), 0, 0, bitmapPaint);
For some reason (must be something simple) I do not see the bitmaps at the 0,0 of the canvas. Inspecting the bitmap and etc does not show anything obvious (nulls), I must have missed something. Is there something I should be paying particular attention to while drawing bitmaps?
View 5 Replies
View Related
Sep 3, 2010
I'm trying to draw out a race track in a map overlay. I have a series of locations that define the track. I have the drawing working fine just using canvas.drawLine() from one point to the next. But, understandably, this looks kind of choppy. Is there a decent way to smooth the line out?
View 3 Replies
View Related
Aug 18, 2010
I am using the above code for displaying bitmap.and i also move that bitmap.Now my qusetion is how i am compare bitmap with another bitmap. Please give me some suggestions.
View 2 Replies
View Related
Mar 10, 2010
I have 3 images that I want to add one after other on a canvas.
This is my code...
but this is not working.
Can someone please tell me what I am doing wrong here.
View 1 Replies
View Related
May 26, 2009
I want to load an icon from resource and draw over it. But I cannot get it into a canvas. Can anyone please help me with the code below. If I uncomment c.drawColor(), I get blue color as expected. So the problem is on icon.draw(). code...
View 2 Replies
View Related
Sep 28, 2010
I want to load e.g. LinearLayout with some Buttons from XML and draw it on Canvas in a way that the Views behave normally (I can set onClick actions for the Buttons and when I press a Button, it changes it's background drawable). Can I do this?
View 1 Replies
View Related
Oct 19, 2010
Is it possible to add TextView and ImageView on canvas?
View 2 Replies
View Related
May 28, 2010
I'm trying to find information on how to change the coordinate system for the canvas.I have some vector data I'd like to draw to a canvas using things like circles and lines, but the data's coordinate system doesn't match the canvas coordinate system. Is there a way to map the units I'm using to the screen's units?
I'm drawing to an ImageView which isn't taking up the entire display.If I have to do my own calculations prior to each drawing call, how to I find the width and height of my ImageView?The getWidth() and getHeight() calls I tried seem to be returning the entire canvas size and not the size of the ImageView which isn't helpful.I see some matrix stuff, is that something that will work for me?I tried to use the "public void scale(float sx, float sy)", but that works more like a pixel level zoom rather than a vector scale function by expanding each pixel. This means if the dimensions are increased to fit the screen, the line thickness is also increased.
View 2 Replies
View Related