Search Results

Search found 17287 results on 692 pages for 'card game'.

Page 186/692 | < Previous Page | 182 183 184 185 186 187 188 189 190 191 192 193  | Next Page >

  • What is a good platform for building a game framework targetting both web and native languages?

    - by fuzzyTew
    I would like to develop (or find, if one is already in development) a framework with support for accelerated graphics and sound built on a system flexible enough to compile to the following: native ppc/x86/x86_64/arm binaries or a language which compiles to them javascript actionscript bytecode or a language which compiles to it (actionscript 3, haxe) optionally java I imagine, for example, creating an API where I can open windows and make OpenGL-like calls and the framework maps this in a relatively efficient manner to either WebGL with a canvas object, 3d graphics in Flash, OpenGL ES 2 with EGL, or desktop OpenGL in an X11, Windows, or Cocoa window. I have so far looked into these avenues: Building the game library in haXe Pros: Targets exist for php, javascript, actionscript bytecode, c++ High level, object oriented language Cons: No support for finally{} blocks or destructors, making resource cleanup difficult C++ target does not allow room for producing highly optimized libraries -- the foreign function interface requires all primitive types be boxed in a wrapper object, as if writing bindings for a scripting language; these feel unideal for real-time graphics and audio, especially exporting low-level functions. Doesn't seem quite yet mature Using the C preprocessor to create a translator, writing programs entirely with macros Pros: CPP is widespread and simple to use Cons: This is an arduous task and probably the wrong tool for the job CPP implementations differ widely in support for features (e.g. xcode cpp has no variadic macros despite claiming C99 compliance) There is little-to-no room for optimization in this route Using llvm's support for multiple backends to target c/c++ to web languages Pros: Can code in c/c++ LLVM is a very mature highly optimizing compiler performing e.g. global inlining Targets exist for actionscript (alchemy) and javascript (emscripten) Cons: Actionscript target is closed source, unmaintained, and buggy. Javascript targets do not use features of HTML5 for appropriate optimization (e.g. linear memory with typed arrays) and are immature An LLVM target must convert from low-level bytecode, so high-level constructs are lost and bloated unreadable code is created from translating individual instructions, which may be more difficult for an unprepared JIT to optimize. "jump" instructions cause problems for languages with no "goto" statements. Using libclang to write a translator from C/C++ to web languages Pros: A beautiful parsing library providing easy access to the code structure Can code in C/C++ Has sponsored developer effort from Apple Cons: Incomplete; current feature set targets IDEs. Basic operators are unexposed and must be manually parsed from the returned AST element to be identified. Translating code prior to compilation may forgo optimizations assumed in c/c++ such as inlining. Creating new code generators for clang to translate into web languages Pros: Can code in C/C++ as libclang Cons: There is no API; code structure is unstable A much larger job than using libclang; the innards of clang are complex Building the game library in Common Lisp Pros: Flexible, ancient, well-developed language Extensive introspection should ease writing translators Translators exist for at least javascript Cons: Unfamiliar language No standardized library functions, widely varying implementations Which of these avenues should I pursue? Do you know of any others, or any systems that might be useful? Does a general project like this exist somewhere already? Thank you for any input.

    Read the article

  • Ubuntu cant load sound cart

    - by Reza Marefaty
    I have installed Ubuntu 12 and i cant see any volume controller on it and so no audio player can detect any sound card and nothing shown in system setting - sound - output tab. but i can see my hard ware by typing this command : aplay -l Return : List of PLAYBACK Hardware Devices ** card 0: Intel [HDA Intel], device 0: HDA Generic [HDA Generic] Subdevices: 1/1 Subdevice #0: subdevice #0 card 1: U0x4d90x20 [USB Device 0x4d9:0x20], device 0: USB Audio [USB Audio] Subdevices: 1/1 Subdevice #0: subdevice #0 card 2: Generic [HD-Audio Generic], device 3: HDMI 0 [HDMI 0] Subdevices: 1/1 Subdevice #0: subdevice #0 How can i activate sound ? Edit : This info may helep for the solution : sudo lspci | grep Audio 00:1b.0 Audio device: Intel Corporation N10/ICH 7 Family High Definition Audio Controller (rev 01) 04:00.1 Audio device: Advanced Micro Devices [AMD] nee ATI Cedar HDMI Audio [Radeon HD 5400/6300 Series]

    Read the article

  • How to manage two video cards on a laptop (ATI and Intel)?

    - by Marc-François Cochaux-Laberge
    I have a laptop with two video cards. One ATI and on integrated Intel. On Windows, I can choose which video card I want to use. For example, I use the Intel card for normal use and for gaming, I switch to my ATI card for better performance, but a shorter battery life. In Ubuntu 10.10, only the Intel driver is installed, the ATI driver for my card doesn't work at all and there's heat coming out of my computer all the time, like when I'm playing video games on Windows. I think both cards are active, but only the Intel one is usefull. How can I solve this by making sure Ubuntu is aware of the two video cards and by disabling my ATI. Or may be I am all wrong about this?

    Read the article

  • No HDMI sound output on Thinkpad X1

    - by nickf
    I'm having problems getting my sound to output via HDMI to my TV. When I go to Sound Settings, the HDMI device does not appear. ~$ aplay -l **** List of PLAYBACK Hardware Devices **** card 0: PCH [HDA Intel PCH], device 0: CONEXANT Analog [CONEXANT Analog] Subdevices: 1/1 Subdevice #0: subdevice #0 card 0: PCH [HDA Intel PCH], device 3: HDMI 0 [HDMI 0] Subdevices: 1/1 Subdevice #0: subdevice #0 card 0: PCH [HDA Intel PCH], device 7: HDMI 1 [HDMI 1] Subdevices: 1/1 Subdevice #0: subdevice #0 card 0: PCH [HDA Intel PCH], device 8: HDMI 2 [HDMI 2] Subdevices: 1/1 Subdevice #0: subdevice #0 I don't know if the video information is helpful, but anyway: ~$ sudo lshw -C video *-display description: VGA compatible controller product: 2nd Generation Core Processor Family Integrated Graphics Controller vendor: Intel Corporation physical id: 2 bus info: pci@0000:00:02.0 version: 09 width: 64 bits clock: 33MHz capabilities: msi pm vga_controller bus_master cap_list rom configuration: driver=i915 latency=0 resources: irq:46 memory:d0000000-d03fffff memory:c0000000-cfffffff ioport:5000(size=64) Any suggestions for me?

    Read the article

  • how to change the game developed in iphone to ipad ?

    - by srikanth rongali
    I have developed a game for iPhone using coco2d 0.99.3. I want it to work on iPad. I have the new images which are bigger in size and resolution than iPhone images. I replaced the images and checked, but the image is appearing only in iPhone simulator which is inside the iPad simulator. What changes shall I make ? Thank You.

    Read the article

  • Intel PRO/1000 Server NIC on Windows latency. How to measure?

    - by Bobb
    Please note - this question is about latency of the card itself. Not latency of internet or anything else. Thank you for your attention on this matter. It is often said that good server NIC does make difference compared to low grade cards and on-board Ethernet chips. I understand that on-board chip will likely consume CPU time and stand-alone card would use its own chip. Also server card would be faster than low-grade card. Are these 2 facts explaining most of the server cards advantages over on-board and low-grade cards ethernet? How would you measure latency on the card itself? I saw some reports stating some microseconds figures of NIC latency but I dont see how to measure that... Any advise will be appreciated.

    Read the article

  • Live-Ubuntu 12.04 ran fine, now stopped booting!

    - by user89743
    I've seen similar problems to this several times in the forum, but mine is a bit different, so the other posts I saw were no help to me. When I boot Ubuntu 12.04 64-bit from live-SD-card (3GB persistence) I suddenly get this error: (initramfs) mount: mounting /dev/loop0 on //filesystem.squashfs failed: Invalid argument Can not mount /dev/loop/0 (/cdrom/casper/filesystem.squashfs) on //filesystem.squashfs (it says I can type "help" for commands, but I don't know anything about how to go from there, totally new to linux) The reason I say my case is different is because my Ubuntu worked fine for over a week, even pretty fast, and now this problem happened. Before that I used to run my live ubuntu from USB sticks but that was slower (especially when booting which took 15 minutes from USB stick!). Also I kept getting the same above problem after a while when booting and had to re-create a live USB linux several times. Installing on harddrive is not an option because my harddrive has physical damage and getting a replacement will take a while, therefore I can only use live-USB or live-SD-card Ubuntu. As I said I used Ubuntu without problems for more than a week, before that as well for several weeks on USB sticks, but the above problem occured sooner or later. This time I paid attention to when it happened: I was rebooting my computer (HP 620 laptop, 4 GB RAM, 64 bit system) from SD flash card and when I was booting I selected F6 and then the first option "no acpi" or something like that...I had used it before and noticed it slowed down the time it took Linux to use. This time it caused this error. Now even when I boot normally/default I get this error. Now I'm accessing Ubuntu from my USB stick without persistence file, when I check my SD card, all the files mentioned in the error message are there and the filesystem.squashfs is 691.2 MB so nothing seems to have been deleted by accident. (I have already made many changes/downloaded programs to my SD card persistent Ubuntu and would hope to loose them, since downloading is expensive for me, and since the problem seems to re-occur...) Can anyone help me, preferably without having to create another startup disk on my SD card? I'm totally new to this. Sorry for the long posts, just didn't know what info is relevant and what isnt! Kon

    Read the article

  • Ubuntu running like mud, system hangs and looks like its running at 3FPS

    - by user240803
    the system specks: AMD XP 3200+ 1GB DDR 333 RAM 160 GB HD IDE NVIDIA FX 5500 AGP Video Card Compaq Presario sr1230nx the system takes forever to boot and when it does it runs like total mud, reminds me of an overloaded system that has too many windows open or something... fresh install tried soo many thing like new memory (it had 512 stick) a new video card (onboard 8mb sis sounded like the problem, but wasn't... has gotten a little faster now but not by much) tried to disable all the things on the motherboard that could be, with no help... this machine runs windows XP, 7, and 8 JUST FINE!!! I mean for a single core CPU WIN8 runs AWESOME!!! BUT I already have a Gaming Desktop that has Windows 8 pro I want a Linux machine to get some time in and learn a few things... I want Ubuntu because of the Software center so I can install things I want until I am familiar with the command line.. I've worked on Computers since I was 12 I remember some of the DOS commands but I guess these are a little different... anyway any ideas? Ive also tried both drivers for the NVIDA card and that didn't help either... its not the card since it did this with both the NVIDA card and the SIS onboard... it also does this on live mode with the USB so I don't think its the HardDrive... I'm running out of options of hardware to try... I know this version of Linux works cuz Ive booted it on other machines and it ran great... what is with this Compaq? here is a vid of exactly what its doing... let me know if you need anything else I am right by the comptuer tonight so ask anything... http://youtu.be/-P-XNo81098

    Read the article

  • How to host an AP or a hotspot?

    - by user1048138
    I'm running Ubuntu 12.04 as a virtual machine on my Mac. Since I am unable to get the virtual machine to have full access to my WiFi card, I bought another USB WiFi card to use. This is my WiFi card. If you are unfamiliar with Virtual machine, as far as I know, since the Ubuntu has its own card now, it shouldn't matter. I have followed these guides with no luck: https://help.ubuntu.com/community/WifiDocs/WirelessAccessPoint http://www.danbishop.org/2011/12/11/using-hostapd-to-add-wireless-access-point-capabilities-to-an-ubuntu-server/ The problem is that the WiFi connection appears on all of the machines that I have in my house: 2 iPhones, Dell machine running Ubuntu and two Macbooks. However the connection times out on all of these machines. Questions: Could this be a driver issue if that same WiFi card can connect to other WiFi points and use its internet Could this be DHCP related? I would think not. It should at least get a 169.X.X.X address? No? Any solutions for me?

    Read the article

  • [game] How to write ::: in cpp and ??? in c#?

    - by daveny
    These questions are a kind of game, and I did not find the solution for them. It is possible to write ::: in Cpp without using "" or anything like this and the compiler will accept it. (macro-s are prohibited too) And the same is true for C# too, but in C#, you have to write ???. I think Cpp will use the :: scope operator and C# will use '? :' , but I do not know the answers to them. Any idea?

    Read the article

  • How to blacklist a PCI device so a system can boot?

    - by Reda Lazri
    I installed Ubuntu 10.10 on someone's computer which it had a 'Connexant Fusion 878A' PCI card installed, the card is problematic, I had to unplug it just to use the Live CD. Now my question is how to know which module to blacklist, so he can use the card in Windows and override it when he boots into Ubuntu. There's a twist, I can't plug it and lsmod it because it won't let the system boot up even in 'Recovery Mode'. Kernel: 2.6.35-22

    Read the article

  • Trouble with array of dictionaries, ruby

    - by user299450
    I am getting the following error. game.rb:46:in `play': undefined method `[]' for nil:NilClass (NoMethodError) from game.rb:45:in each' from game.rb:45:inplay' from game.rb:56 with this code, def play() currentTile = nil @tiles.each do |tile| if(tile['Name'] == 'Starting Square') currentTile = tile end puts("#{currentTile['Desciption']}") end end This is part of a text adventure game, I am playing with @tiles is an array of tiles that was read from a file. Each tile is a dictionary. Thanks for any help, I cant figure this out

    Read the article

  • ATI HD5450 w/ Ubuntu 14?

    - by Oliwb
    So, I'm running Ubuntu 12.04 right now. Last night I realised that I'm way behind as we're up to 14! Decided to run the updater and figured I'd take the path of least resistance (but lengthy choice) of going 12.04 - 12.10 - 13.xx - 14.xx. So I download the first packet and then get an error message about my graphics card perhaps not working in 12.10. Now part of the reason I was looking to upgrade is because I get (and have always had) this strange occasional flickering - now that I have two screens it's just on the second monitor.....oddly this is not the same port that was giving issues before). The graphics card is an ATI Radeon HD5450 and I have the Catalyst (I think it's 13 or 14) driver installed - last night. It could be that the graphics card has never worked properly...I bought the PC new and with an "upgraded" video card and it's always suffered with this flicker. I just figured that the drivers weren't right or something. So I have 3 questions: 1) is my video card broken or is the driver letting it down and causing the flicker? 2) will it be able to handle the upgrade to 14 via 13? Or should I cut my losses and get something newer? 3) if I should get something newer....what should I get ( Thanks in advance....

    Read the article

  • Dual 7950, freezes during startup

    - by Hiro
    I have two identical video cards right now. Xubuntu will boot up no problem if I only have one card installed. If I install the 2nd card it will just hang midway thru the loading screen. Regardless of which card I use and which position on the motherboard, it will freeze if I have both installed. I've tried installing the proprietary drivers, both fglrx and fglrx-updates, still freezes in the same spot. Uninstalled those and went back to the default ones. The only way I can get a terminal is by booting into failsafe mode. Booting using 13.10 i386 on a USB stick gives me some errors related to what I think is the 2nd video card: [drm:r600_ring_test] ERROR radeon: ring 1 test failed (scratch(0x850C)=0xCAFEDEAD) [drm:r600_dma_ring_test] ERROR radeon: ring 3 test failed (0x02FFFF6B) radeon 0000:0200.2 disabling GPU acceleration"

    Read the article

  • How do I disable a Nvidia 9600GT on MacBookPro 5.1?

    - by Gjan
    i finally put up a Dual Boot with Ubuntu and Lion on my old MacBookPro 5.1 As reported in many cases the discrete graphics card is turned on all the time consuming a lot of power and thus heating up the laptop. Since the discrete graphics card does not support the nvidia optimus technology, the corresponding packge nvidia-prime does not help in this case. Therefore my question is, how to manually disable the discrete graphics card Nvdidia 9600GT ? Preferably a 'switch-on-the-run' version, but a 'set-on-boot' would be totally fine!

    Read the article

  • Building a decision-making game in jQuery? Where would I store data....

    - by redconservatory
    I built a slideshow/decision-making game in Flash but would like to try to redo it using jQuery. The slideshow part seems simple enough, however I have a series of user decisions that I'm not sure how to approach. In flash, if the user makes a decision, I would just store this in a variable or shared local objects, is this the same for jQuery? i.e. mix regular javascript variables with the jQuery?

    Read the article

  • [game] How is it possible to legally write ::: in C++ and ??? in C#?

    - by daveny
    These questions are a kind of game, and I did not find the solution for them. It is possible to write ::: in C++ without using quotes or anything like this and the compiler will accept it (macros are prohibited too). And the same is true for C# too, but in C#, you have to write ???. I think C++ will use the :: scope operator and C# will use ? : , but I do not know the answers to them. Any idea?

    Read the article

  • Wifi connection problems

    - by user12511
    I have Ubuntu 10.10 installed on a HP Pavilion DV2750ea. The wifi card is an Intel 4965AGN. When I first started using Ubuntu on this laptop it connected wirelessly to the network. Then it suddenly stopped. The Wifi card power light is off and all information says the card is disabled. When the laptop is powered on the wifi power light turns on and stays on until Ubuntu finishes loading. I have replaced the wifi card and the wifi switch module with no change. Please can you help.

    Read the article

  • 2D Game Character Animation in iPhone - How is it done?

    - by Shnitzel
    What I mean is, do animators work on an animation in say Flash (or some other kind of key frame animation program) and then export it to the iphone somehow? For example, say I am an animator and I want to create a person waving for an iphone game. What type of external program would I use and then what libraries on the iphone sdk would I use to load them in?

    Read the article

  • Upgraded Ubuntu from 12.04 to 12.10 Ati radeon HD 3450 Catastrophe!

    - by minime
    When I had upgraded everything was ready on the screen om my computer and with my 12.04 ubuntu. When I restarted my system, the graphics card was not detected. I was forced to start the computer in low graphics mode, and eventually I had a pink deskop with only my maps, and no other programs at all. What do I do now? I need to recover the pictures on my system so that I can upload them online. I'd done a graphics card test on the terminal initially, and it showed that the card was compatible with unity 3D. I have an ATI radeon HD 3450 and I was running a 32 bit build of Ubuntu 12.04 initially Right now I have a broken install of Linux, with no working graphics card or desktop to start from, so I'm unsure of how to fix this.

    Read the article

  • Windows 7 unidentified network (or limited access) after hibernate.

    - by null
    My windows 7 network will show limited access or unidentified network after coming up from hibernation. In the office I normally use LAN connection, I turn-off my wireless card (DELL Latitude has on/off switch for the wireless card). When I back at home I will turn on the wireless card, but it will take about 15 seconds to detect my home WIFI and then show limited access. I will have to restart the notebook and it will be able to connect to my WIFI and internet. The problem will be solved if I restart the notebook, but that defeats the purpose of hibernation doesn't it? I have tried uninstalling the wireless card driver but still does not solve it. I also tried updating my network card driver but windows says I am using the latest driver. On support.dell.com also showing I am using the latest driver.

    Read the article

  • Cocos2d-xna memory management for WP8

    - by Arkiliknam
    I recently upgraded to VS2012 and try my in dev game out on the new WP8 emulators but was dismayed to find out the emulator now crashes and throws an out of memory exception during my sprite loading procedure (funnily, it still works in WP7 emulators and on my WP7). Regardless of whether the problem is the emulator or not, I want to get a clear understanding of how I should be managing memory in the game. My game consists of a character whom has 4 or more different animations. Each animation consists of 4 to 7 frames. On top of that, the character has up to 8 stackable visualization modifications (eg eye type, nose type, hair type, clothes type). Pre memory issue, I preloaded all textures for each animation frame and customization and created animate action out of them. The game then plays animations using the customizations applied to that current character. I re-looked at this implementation when I received the out of memory exceptions and have started playing with RenderTexture instead, so instead of pre loading all possible textures, it on loads textures needed for the character, renders them onto a single texture, from which the animation is built. This means the animations use 1/8th of the sprites they were before. I thought this would solve my issue, but it hasn't. Here's a snippet of my code: var characterTexture = CCRenderTexture.Create((int)width, (int)height); characterTexture.BeginWithClear(0, 0, 0, 0); // stamp a body onto my texture var bodySprite = MethodToCreateSpecificSprite(); bodySprite.Position = centerPoint; bodySprite.Visit(); bodySprite.Cleanup(); bodySprite = null; // stamp eyes, nose, mouth, clothes, etc... characterTexture.End(); As you can see, I'm calling CleanUp and setting the sprite to null in the hope of releasing the memory, though I don't believe this is the right way, nor does it seem to work... I also tried using SharedTextureCache to load textures before Stamping my texture out, and then clearing the SharedTextureCache with: CCTextureCache.SharedTextureCache.RemoveAllTextures(); But this didn't have an effect either. Any tips on what I'm not doing? I used VS to do a memory profile of the emulation causing the crash. Both WP7.1 and WP8 emulators peak at about 150mb of usage. WP8 crashes and throws an out of memory exception. Each customisation/frame is 15kb at the most. Lets say there are 8 layers of customisation = 120kb but I render then onto one texture which I would assume is only 15kb again. Each animation is 8 frames at the most. That's 15kb for 1 texture, or 960kb for 8 textures of customisation. There are 4 animation sets. That's 60Kb for 4 sets of 1 texture, or 3.75MB for 4 sets of 8 textures of customisation. So even if its storing every layer, its 3.75MB.... no where near the 150mb breaking point my profiler seems to suggest :( WP 7.1 Memory Profile (max 150MB) WP8 Memory Profile (max 150MB and crashes)

    Read the article

  • Automating XNA Performance Testing?

    - by Grofit
    I was wondering what peoples approaches or thoughts were on automating performance testing in XNA. Currently I am looking at only working in 2d, but that poses many areas where performance can be improved with different implementations. An example would be if you had 2 different implementations of spatial partitioning, one may be faster than another but without doing some actual performance testing you wouldn't be able to tell which one for sure (unless you saw the code was blatantly slow in certain parts). You could write a unit test which for a given time frame kept adding/updating/removing entities for both implementations and see how many were made in each timeframe and the higher one would be the faster one (in this given example). Another higher level example would be if you wanted to see how many entities you can have on the screen roughly without going beneath 60fps. The problem with this is to automate it you would need to use the hidden form trick or some other thing to kick off a mock game and purely test which parts you care about and disable everything else. I know that this isnt a simple affair really as even if you can automate the tests, really it is up to a human to interpret if the results are performant enough, but as part of a build step you could have it run these tests and publish the results somewhere for comparison. This way if you go from version 1.1 to 1.2 but have changed a few underlying algorithms you may notice that generally the performance score would have gone up, meaning you have improved your overall performance of the application, and then from 1.2 to 1.3 you may notice that you have then dropped overall performance a bit. So has anyone automated this sort of thing in their projects, and if so how do you measure your performance comparisons at a high level and what frameworks do you use to test? As providing you have written your code so its testable/mockable for most parts you can just use your tests as a mechanism for getting some performance results... === Edit === Just for clarity, I am more interested in the best way to make use of automated tests within XNA to track your performance, not play testing or guessing by manually running your game on a machine. This is completely different to seeing if your game is playable on X hardware, it is more about tracking the change in performance as your game engine/framework changes. As mentioned in one of the comments you could easily test "how many nodes can I insert/remove/update within QuadTreeA within 2 seconds", but you have to physically look at these results every time to see if it has changed, which may be fine and is still better than just relying on playing it to see if you notice any difference between version. However if you were to put an Assert in to notify you of a fail if it goes lower than lets say 5000 in 2 seconds you have a brittle test as it is then contextual to the hardware, not just the implementation. Although that being said these sort of automated tests are only really any use if you are running your tests as some sort of build pipeline i.e: Checkout - Run Unit Tests - Run Integration Tests - Run Performance Tests - Package So then you can easily compare the stats from one build to another on the CI server as a report of some sort, and again this may not mean much to anyone if you are not used to Continuous Integration. The main crux of this question is to see how people manage this between builds and how they find it best to report upon. As I said it can be subjective but as knowledge will be gained from the answers it seems a worthwhile question.

    Read the article

  • How to use caching to increase render performance?

    - by Christian Ivicevic
    First of all I am going to cover the basic design of my 2d tile-based engine written with SDL in C++, then I will point out what I am up to and where I need some hints. Concept of my engine My engine uses the concept of GameScreens which are stored on a stack in the main game class. The main methods of a screen are usually LoadContent, Render, Update and InitMultithreading. (I use the last one because I am using v8 as a JavaScript bridge to the engine. The main game loop then renders the top screen on the stack (if there is one; otherwise, it exits the game) - actually it calls the render methods, but stores all items to be rendered in a list. After gathering all this information the methods like SDL_BlitSurface are called by my GameUIRenderer which draws the enqueued content and then draws some overlay. The code looks like this: while(Game is running) { Handle input if(Screens on stack == 0) exit Update timer etc. Clear the screen Peek the screen on the stack and collect information on what to render Actually render the enqueue screen stuff and some overlay etc. Flip the screen } The GameUIRenderer uses as hinted a std::vector<std::shared_ptr<ImageToRender>> to hold all necessary information described by this class: class ImageToRender { private: SDL_Surface* image; int x, y, w, h, xOffset, yOffset; }; This bunch of attributes is usually needed if I have a texture atlas with all tiles in one SDL_Surface and then the engine should crop one specific area and draw this to the screen. The GameUIRenderer::Render() method then just iterates over all elements and renders them something like this: std::for_each( this->m_vImageVector.begin(), this->m_vImageVector.end(), [this](std::shared_ptr<ImageToRender> pCurrentImage) { SDL_Rect rc = { pCurrentImage->x, pCurrentImage->y, 0, 0 }; // For the sake of simplicity ignore offsets... SDL_Rect srcRect = { 0, 0, pCurrentImage->w, pCurrentImage->h }; SDL_BlitSurface(pCurrentImage->pImage, &srcRect, g_pFramework->GetScreen(), &rc); } ); this->m_vImageVector.clear(); Current ideas which need to be reviewed The specified approach works really good and IMHO it is really has a good structure, however the performance could be definitely increased. I would like to know what do you suggest, how to implement efficient caching of surfaces etc so that there is no need to redraw the same scene over and over again? The map itself would be almost static, only when the player moves, we would need to move the map. Furthermore animated entities would either require updates of the whole map or updates of only the specific areas the entities are currently moving in. My first approaches were to include a flag IsTainted which should be used by the GameUIRenderer to decide whether to redraw everything or use cached version (or to not render anything so that we do not have to Clear the screen and let the last frame persist). However this seems to be quite messy if I have to manually handle in my Render method of the screen class if something has changed or not.

    Read the article

< Previous Page | 182 183 184 185 186 187 188 189 190 191 192 193  | Next Page >