{"id":46428,"date":"2018-06-12T05:25:26","date_gmt":"2018-06-12T05:25:26","guid":{"rendered":"https:\/\/www.libretro.com\/?p=46428"},"modified":"2019-05-28T01:53:30","modified_gmt":"2019-05-28T01:53:30","slug":"introducing-reicast-oit-libretro-core-updated-reicast-regular-core","status":"publish","type":"post","link":"https:\/\/www.libretro.com\/index.php\/introducing-reicast-oit-libretro-core-updated-reicast-regular-core\/","title":{"rendered":"Introducing BeetleDC OIT libretro core + updated BeetleDC regular core"},"content":{"rendered":"<p>The BeetleDC libretro core has seen several big improvements as of late, and we thought it would be remiss of us if we did not take this opportunity to talk about it.<\/p>\n<h1>There are two cores now<\/h1>\n<p>There are now two BeetleDC cores:<\/p>\n<ul>\n<li>BeetleDC regular<\/li>\n<li>BeetleDC OIT<\/li>\n<\/ul>\n<p><strong>BeetleDC regular:<\/strong> Contains an OpenGL renderer that requires OpenGL 2.x on the desktop and GLES 2.x on mobile.<\/p>\n<p><strong>BeetleDC OIT:<\/strong> Contains an OpenGL renderer that requires OpenGL 4.3, and as a result is only available for Windows and Linux. BeetleDC OIT might have significantly increased system requirements, but in return you get much more accurate graphics which tend to fix nearly all the issues that plague Dreamcast graphics with the regular version.<\/p>\n<h2>How to get it<\/h2>\n<p><img decoding=\"async\" loading=\"lazy\" src=\"https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/core-updater.png\" alt=\"\" width=\"955\" height=\"715\" class=\"aligncenter size-full wp-image-46470\" srcset=\"https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/core-updater.png 955w, https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/core-updater-300x225.png 300w, https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/core-updater-768x575.png 768w\" sizes=\"(max-width: 955px) 100vw, 955px\" \/><\/p>\n<p>In RetroArch, go to Online Updater -> Update Cores. From there, BeetleDC and BeetleDC OIT should be available for the following platforms:<\/p>\n<ul>\n<li>Linux<\/li>\n<li>Windows<\/li>\n<li>Mac (Reicast OIT is not available for Mac due to no GL 4.3 support)<\/li>\n<\/ul>\n<h1>What is new\/improved in both Reicast versions?<\/h1>\n<h2>BeetleDC regular<\/h2>\n<p>BeetleDC regular&#8217;s OpenGL renderer has received many improvements that greatly increases the graphics accuracy and squashes many graphics bugs that plagued games in the past.<\/p>\n<p>Here are some of the Dreamcast&#8217;s GPU features that are now implemented:<\/p>\n<ul>\n<li>Tile clipping support.<\/li>\n<li>Fogging support.<\/li>\n<li>Volume modifier shadow support.<\/li>\n<li>Multipass rendering.<\/li>\n<li>Render to texture buffer.<\/li>\n<li>Log 2 depth buffer.<\/li>\n<\/ul>\n<p>Some additional enhancements include a log 2 depth buffer, fixing much of the polygon glitching that could happen in the distant background in many games.<\/p>\n<p>All of these additions to the existing GL2 renderer in BeetleDC regular come courtesy of flyinghead.<\/p>\n<h2>BeetleDC OIT<\/h2>\n<p>BeetleDC OIT uses an entirely new graphics renderer written by flyinghead targeting OpenGL 4.3. In addition to boasting all the features that BeetleDC regular also enjoys as of this date, it also has the additional advantage of incorporating Order Independent Transparency, so that we don&#8217;t have to do hacky and error prone alpha sorting hacks, which is our main resort in BeetleDC regular.<\/p>\n<ul>\n<li>Tile clipping support.<\/li>\n<li>Fogging support.<\/li>\n<li>Volume modifier shadow support.<\/li>\n<li>Multipass rendering.<\/li>\n<li>Render to texture buffer.<\/li>\n<li>Log 2 depth buffer.<\/li>\n<li><strong>Order independent transparency<\/strong>.<\/li>\n<li><strong>Two-volume mode support.<\/strong><\/li>\n<\/ul>\n<p><b>NOTE:<\/b> This requires a compatibility context for OpenGL 4.3. You might encounter issues with Intel\/AMD GPUs right now on Linux using Mesa drivers since they require core context. Core context cannot currently be used because there are still graphic bugs to be solved when using this.<\/p>\n<h1>Showcase of new emulated features<\/h1>\n<p>Flyinghead has a terrific fork of Reicast that dramatically increased the rendering accuracy of BeetleDC&#8217;s OpenGL renderer. We backported these features with the gracious help of flyinghead. All kudos goes to him.<\/p>\n<h2>Tile clipping support<\/h2>\n<p><div id='gallery-1' class='gallery galleryid-46428 gallery-columns-3 gallery-size-medium'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a href='https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/tileclip-before.png'><img width=\"300\" height=\"169\" src=\"https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/tileclip-before-300x169.png\" class=\"attachment-medium size-medium\" alt=\"\" decoding=\"async\" loading=\"lazy\" srcset=\"https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/tileclip-before-300x169.png 300w, https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/tileclip-before-768x432.png 768w, https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/tileclip-before-1024x576.png 1024w, https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/tileclip-before.png 1920w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a href='https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/tileclip-after.png'><img width=\"300\" height=\"169\" src=\"https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/tileclip-after-300x169.png\" class=\"attachment-medium size-medium\" alt=\"\" decoding=\"async\" loading=\"lazy\" srcset=\"https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/tileclip-after-300x169.png 300w, https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/tileclip-after-768x432.png 768w, https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/tileclip-after-1024x576.png 1024w, https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/tileclip-after.png 1920w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n<br \/>\nThe Dreamcast&#8217;s PVR2 had a tile clipping GPU feature that was used to obscure portions of the screen. It was cheaper to keep rendering portions of the screen that were not meant to be seen by the user and just clip them away instead of deciding not to render them at all. This was previously unimplemented, which led to all sorts of graphics glitches. This has now been finally implemented in both cores.<\/p>\n<h2>Fogging support<\/h2>\n<p><div id='gallery-2' class='gallery galleryid-46428 gallery-columns-3 gallery-size-medium'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a href='https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/cannonspike-before.png'><img width=\"300\" height=\"169\" src=\"https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/cannonspike-before-300x169.png\" class=\"attachment-medium size-medium\" alt=\"\" decoding=\"async\" loading=\"lazy\" srcset=\"https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/cannonspike-before-300x169.png 300w, https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/cannonspike-before-768x432.png 768w, https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/cannonspike-before-1024x576.png 1024w, https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/cannonspike-before.png 1920w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a href='https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/cannonspike-after.png'><img width=\"300\" height=\"169\" src=\"https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/cannonspike-after-300x169.png\" class=\"attachment-medium size-medium\" alt=\"\" decoding=\"async\" loading=\"lazy\" srcset=\"https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/cannonspike-after-300x169.png 300w, https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/cannonspike-after-768x432.png 768w, https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/cannonspike-after-1024x576.png 1024w, https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/cannonspike-after.png 1920w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n<br \/>\nThe Dreamcast had a 128-bit fogging table that games could take advantage of. Plenty did, such as Cannon Spike, Blue Stinger, Resident Evil: Code Veronica, Virtua Fighter 3tb, and more games. This is now finally implemented for both cores.<\/p>\n<h2>Volume modifier shadow support<\/h2>\n<p><div id='gallery-3' class='gallery galleryid-46428 gallery-columns-3 gallery-size-medium'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a href='https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/volume-before.png'><img width=\"300\" height=\"166\" src=\"https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/volume-before-300x166.png\" class=\"attachment-medium size-medium\" alt=\"\" decoding=\"async\" loading=\"lazy\" srcset=\"https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/volume-before-300x166.png 300w, https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/volume-before-768x426.png 768w, https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/volume-before-1024x568.png 1024w, https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/volume-before.png 1880w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a href='https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/volume-after.png'><img width=\"300\" height=\"166\" src=\"https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/volume-after-300x166.png\" class=\"attachment-medium size-medium\" alt=\"\" decoding=\"async\" loading=\"lazy\" srcset=\"https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/volume-after-300x166.png 300w, https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/volume-after-768x425.png 768w, https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/volume-after-1024x566.png 1024w, https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/volume-after.png 1884w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n<br \/>\nThe Dreamcast made use of volume modifiers in order to simulate shadows in many games. This was previously either completely unimplemented or very buggily rendered. Volume modifiers are now correctly implemented in both cores (BeetleDC and BeetleDC OIT). Performance costs should be minimal and you definitely notice the shadows being cast now by characters and other objects.<\/p>\n<h2>Multipass rendering<\/h2>\n<p><div id='gallery-4' class='gallery galleryid-46428 gallery-columns-3 gallery-size-medium'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a href='https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/vrally2-before.png'><img width=\"300\" height=\"167\" src=\"https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/vrally2-before-300x167.png\" class=\"attachment-medium size-medium\" alt=\"\" decoding=\"async\" loading=\"lazy\" srcset=\"https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/vrally2-before-300x167.png 300w, https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/vrally2-before-768x426.png 768w, https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/vrally2-before-1024x569.png 1024w, https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/vrally2-before.png 1880w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a href='https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/vrally2-after.png'><img width=\"300\" height=\"167\" src=\"https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/vrally2-after-300x167.png\" class=\"attachment-medium size-medium\" alt=\"\" decoding=\"async\" loading=\"lazy\" srcset=\"https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/vrally2-after-300x167.png 300w, https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/vrally2-after-768x426.png 768w, https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/vrally2-after-1024x568.png 1024w, https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/vrally2-after.png 1881w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n<br \/>\nThe game V-Rally 2 relies on multipass rendering for rendering the UI elements on top of the game screen. This has finally been emulated on both cores (BeetleDC and BeetleDC OIT).<\/p>\n<h2>Render to texture buffer<\/h2>\n<p><div id='gallery-5' class='gallery galleryid-46428 gallery-columns-3 gallery-size-medium'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a href='https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/rendertotexture-before.png'><img width=\"300\" height=\"165\" src=\"https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/rendertotexture-before-300x165.png\" class=\"attachment-medium size-medium\" alt=\"\" decoding=\"async\" loading=\"lazy\" srcset=\"https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/rendertotexture-before-300x165.png 300w, https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/rendertotexture-before-768x423.png 768w, https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/rendertotexture-before-1024x564.png 1024w, https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/rendertotexture-before.png 1884w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a href='https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/rendertotexture-after.png'><img width=\"300\" height=\"166\" src=\"https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/rendertotexture-after-300x166.png\" class=\"attachment-medium size-medium\" alt=\"\" decoding=\"async\" loading=\"lazy\" srcset=\"https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/rendertotexture-after-300x166.png 300w, https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/rendertotexture-after-768x425.png 768w, https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/rendertotexture-after-1024x567.png 1024w, https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/rendertotexture-after.png 1880w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n<br \/>\nNot only has render to texture being reimplemented (leading to much faster performance), but certain games such as Tony Hawk&#8217;s Pro Skater 1\/2 would render to VRAM for rendering shadows. The upshot of this is that the shadow looks much more convincing vs. merely using volume modifiers in order to simulate shadows. This feature has been finally implemented in both cores.<\/p>\n<h2>Log 2 depth buffer<\/h2>\n<p><div id='gallery-6' class='gallery galleryid-46428 gallery-columns-3 gallery-size-medium'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a href='https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/soulcalibur-before.png'><img width=\"300\" height=\"166\" src=\"https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/soulcalibur-before-300x166.png\" class=\"attachment-medium size-medium\" alt=\"\" decoding=\"async\" loading=\"lazy\" srcset=\"https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/soulcalibur-before-300x166.png 300w, https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/soulcalibur-before-768x426.png 768w, https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/soulcalibur-before-1024x567.png 1024w, https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/soulcalibur-before.png 1882w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a href='https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/soulcalibur-after.png'><img width=\"300\" height=\"169\" src=\"https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/soulcalibur-after-300x169.png\" class=\"attachment-medium size-medium\" alt=\"\" decoding=\"async\" loading=\"lazy\" srcset=\"https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/soulcalibur-after-300x169.png 300w, https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/soulcalibur-after-768x432.png 768w, https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/soulcalibur-after-1024x576.png 1024w, https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/soulcalibur-after.png 1920w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n<br \/>\nThanks to the logarithmic depth buffer, many rendering bugs have been fixed. Some games have been completely fixed as a result, such as Cannon Spike, while others such as Soul Calibur no longer have the scenery in the background glitch out.<\/p>\n<p>Note that this relies on gl_FragDepth being available. This might become an issue when we bring the BeetleDC libretro core to mobile, since it&#8217;s not a part of the GLES2 spec and might require either extensions or GLES3 support.<\/p>\n<h2>Order Independent Transparency<\/h2>\n<p><b>NOTE: This feature is exclusive to BeetleDC OIT, and is not available in the regular BeetleDC core.<\/b><br \/>\n<div id='gallery-7' class='gallery galleryid-46428 gallery-columns-3 gallery-size-medium'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a href='https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/capcom-before.jpg'><img width=\"300\" height=\"225\" src=\"https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/capcom-before-300x225.jpg\" class=\"attachment-medium size-medium\" alt=\"\" decoding=\"async\" loading=\"lazy\" srcset=\"https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/capcom-before-300x225.jpg 300w, https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/capcom-before-768x576.jpg 768w, https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/capcom-before-1024x768.jpg 1024w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a href='https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/capcom-after.jpg'><img width=\"300\" height=\"225\" src=\"https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/capcom-after-300x225.jpg\" class=\"attachment-medium size-medium\" alt=\"\" decoding=\"async\" loading=\"lazy\" srcset=\"https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/capcom-after-300x225.jpg 300w, https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/capcom-after-768x576.jpg 768w, https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/capcom-after-1024x768.jpg 1024w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n<br \/>\n<div id='gallery-8' class='gallery galleryid-46428 gallery-columns-3 gallery-size-medium'><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a href='https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/sonic-before.jpg'><img width=\"300\" height=\"225\" src=\"https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/sonic-before-300x225.jpg\" class=\"attachment-medium size-medium\" alt=\"\" decoding=\"async\" loading=\"lazy\" srcset=\"https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/sonic-before-300x225.jpg 300w, https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/sonic-before-768x576.jpg 768w, https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/sonic-before-1024x768.jpg 1024w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a>\n\t\t\t<\/div><\/figure><figure class='gallery-item'>\n\t\t\t<div class='gallery-icon landscape'>\n\t\t\t\t<a href='https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/sonic-after.jpg'><img width=\"300\" height=\"225\" src=\"https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/sonic-after-300x225.jpg\" class=\"attachment-medium size-medium\" alt=\"\" decoding=\"async\" loading=\"lazy\" srcset=\"https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/sonic-after-300x225.jpg 300w, https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/sonic-after-768x576.jpg 768w, https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/sonic-after-1024x768.jpg 1024w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a>\n\t\t\t<\/div><\/figure>\n\t\t<\/div>\n<\/p>\n<h1>Other improvements<\/h1>\n<h2>Date\/time saving is finally fixed<\/h2>\n<p><img decoding=\"async\" loading=\"lazy\" src=\"https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/dreamcast-time.jpg\" alt=\"\" width=\"450\" height=\"337\" class=\"aligncenter size-full wp-image-46466\" srcset=\"https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/dreamcast-time.jpg 450w, https:\/\/www.libretro.com\/wp-content\/uploads\/2018\/06\/dreamcast-time-300x225.jpg 300w\" sizes=\"(max-width: 450px) 100vw, 450px\" \/><br \/>\nFinally you don&#8217;t have to keep inputting date\/time again whenever starting a game with the BeetleDC cores.<\/p>\n<p>Be sure to set a correct date\/time, as entering a wrong date might lead to it not being able to save.<\/p>\n<h2>Analog triggers<\/h2>\n<p>The core finally supports analog triggers. The Dreamcast had analog L\/R triggers, previously we only had digital trigger simulation, where the L1\/R1 would simulate 50% press of the trigger and L2\/R2 would be a 100% press of the trigger. While this mode is still available if you enable the option &#8216;Digital Triggers&#8217;, you can also now just take advantage of the new digital trigger capabilities.<\/p>\n<p>In addition to this ,deadzone issues should be fixed now, so there should hopefully be no more analog input disparities between Xbox pads and PS4 pads.<\/p>\n<h2>Videos<\/h2>\n<p><iframe loading=\"lazy\" width=\"750\" height=\"422\" src=\"https:\/\/www.youtube.com\/embed\/O8_OLCsdBE0?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen><\/iframe><\/p>\n<p><iframe loading=\"lazy\" width=\"750\" height=\"422\" src=\"https:\/\/www.youtube.com\/embed\/buLwulJpfyM?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen><\/iframe><\/p>\n<p><iframe loading=\"lazy\" width=\"750\" height=\"422\" src=\"https:\/\/www.youtube.com\/embed\/vmZ5sTYD2q8?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen><\/iframe><\/p>\n","protected":false},"excerpt":{"rendered":"<p>The BeetleDC libretro core has seen several big improvements as of late, and we thought it would be remiss of us if we did not take this opportunity to talk about it. There are two cores now There are now two BeetleDC cores: BeetleDC regular BeetleDC OIT BeetleDC regular: Contains an OpenGL renderer that requires [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":[],"categories":[246,28,2,17,5],"tags":[],"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/www.libretro.com\/index.php\/wp-json\/wp\/v2\/posts\/46428"}],"collection":[{"href":"https:\/\/www.libretro.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.libretro.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.libretro.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.libretro.com\/index.php\/wp-json\/wp\/v2\/comments?post=46428"}],"version-history":[{"count":28,"href":"https:\/\/www.libretro.com\/index.php\/wp-json\/wp\/v2\/posts\/46428\/revisions"}],"predecessor-version":[{"id":47250,"href":"https:\/\/www.libretro.com\/index.php\/wp-json\/wp\/v2\/posts\/46428\/revisions\/47250"}],"wp:attachment":[{"href":"https:\/\/www.libretro.com\/index.php\/wp-json\/wp\/v2\/media?parent=46428"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.libretro.com\/index.php\/wp-json\/wp\/v2\/categories?post=46428"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.libretro.com\/index.php\/wp-json\/wp\/v2\/tags?post=46428"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}