2022-05-15 07:30:15 -04:00
{
"MenuBarFileOpenApplet" : "애플릿 열기" ,
"MenuBarFileOpenAppletOpenMiiAppletToolTip" : "독립 실행형 모드에서 Mii 편집기 애플릿 열기" ,
"SettingsTabInputDirectMouseAccess" : "직접 마우스 액세스" ,
"SettingsTabSystemMemoryManagerMode" : "메모리 관리자 모드 :" ,
"SettingsTabSystemMemoryManagerModeSoftware" : "소프트웨어" ,
"SettingsTabSystemMemoryManagerModeHost" : "호스트 (빠른)" ,
"SettingsTabSystemMemoryManagerModeHostUnchecked" : "호스트가 확인되지 않음 (가장 빠르고 안전하지 않은)" ,
"MenuBarFile" : "_파일" ,
"MenuBarFileOpenFromFile" : "_서류철음에서 애플리케이션 로드" ,
"MenuBarFileOpenUnpacked" : "_압축을 푼 게임 로드" ,
"MenuBarFileOpenEmuFolder" : "Ryujinx 폴더 열기" ,
"MenuBarFileOpenLogsFolder" : "로그 폴더 열기" ,
"MenuBarFileExit" : "_그만두" ,
"MenuBarOptions" : "옵션" ,
"MenuBarOptionsToggleFullscreen" : "전체 화면 전환" ,
"MenuBarOptionsStartGamesInFullscreen" : "전체 화면 모드에서 게임 열기" ,
"MenuBarOptionsStopEmulation" : "에뮬레이션 중지" ,
"MenuBarOptionsSettings" : "_조절" ,
"MenuBarOptionsManageUserProfiles" : "사용자 프로필 _관리" ,
"MenuBarActions" : "_행위" ,
"MenuBarOptionsSimulateWakeUpMessage" : "깨우기 명령어 시뮬레이션" ,
"MenuBarActionsScanAmiibo" : "Amiibo 스캔" ,
"MenuBarTools" : "_도구" ,
"MenuBarToolsInstallFirmware" : "펌웨어 설치" ,
"MenuBarFileToolsInstallFirmwareFromFile" : "XCI 또는 ZIP에서 펌웨어 설치" ,
"MenuBarFileToolsInstallFirmwareFromDirectory" : "디렉토리에서 펌웨어 설치" ,
"MenuBarHelp" : "돕다" ,
"MenuBarHelpCheckForUpdates" : "업데이트 확인" ,
"MenuBarHelpAbout" : "통지" ,
"MenuSearch" : "찾다···" ,
"GameListHeaderFavorite" : "즐겨찾기" ,
"GameListHeaderIcon" : "상" ,
"GameListHeaderApplication" : "이름" ,
"GameListHeaderDeveloper" : "개발자" ,
"GameListHeaderVersion" : "버전" ,
"GameListHeaderTimePlayed" : "플레이 시간" ,
"GameListHeaderLastPlayed" : "해본 마지막" ,
"GameListHeaderFileExtension" : "파일 확장자" ,
"GameListHeaderFileSize" : "파일 크기" ,
"GameListHeaderPath" : "파일 경로" ,
"GameListContextMenuOpenUserSaveDirectory" : "사용자 저장 폴더 열기" ,
"GameListContextMenuOpenUserSaveDirectoryToolTip" : "응용 프로그램의 사용자 저장이 포함된 폴더를 엽니다" ,
"GameListContextMenuOpenUserDeviceDirectory" : "사용자 장치 폴더 열기" ,
"GameListContextMenuOpenUserDeviceDirectoryToolTip" : "응용 프로그램의 장치 저장이 포함된 폴더를 엽니다" ,
"GameListContextMenuOpenUserBcatDirectory" : "사용자의 BCAT 폴더 열기" ,
"GameListContextMenuOpenUserBcatDirectoryToolTip" : "응용 프로그램의 BCAT 저장이 포함된 폴더를 엽니다" ,
"GameListContextMenuManageTitleUpdates" : "타이틀 업데이트 관리s" ,
"GameListContextMenuManageTitleUpdatesToolTip" : "타이틀 업데이트 관리 창 열기" ,
"GameListContextMenuManageDlc" : "DLC 관리" ,
"GameListContextMenuManageDlcToolTip" : "DLC 관리 창 열기" ,
"GameListContextMenuOpenModsDirectory" : "모드 디렉토리 열기" ,
"GameListContextMenuOpenModsDirectoryToolTip" : "응용 프로그램의 모드가들 포함된 디렉터리를 엽니다" ,
"GameListContextMenuCacheManagement" : "캐시 관리" ,
"GameListContextMenuCacheManagementPurgePptc" : "PPTC 캐시 제거" ,
"GameListContextMenuCacheManagementPurgePptcToolTip" : "응용 프로그램 PPTC 캐시 삭제" ,
"GameListContextMenuCacheManagementPurgeShaderCache" : "셰이더 캐시 제거" ,
"GameListContextMenuCacheManagementPurgeShaderCacheToolTip" : "애플리케이션 셰이더 캐시를 삭제합니다." ,
"GameListContextMenuCacheManagementOpenPptcDirectory" : "PPTC 디렉토리 열기" ,
"GameListContextMenuCacheManagementOpenPptcDirectoryToolTip" : "응용 프로그램 PPTC 캐시가 포함된 디렉터리를 엽니다" ,
"GameListContextMenuCacheManagementOpenShaderCacheDirectory" : "셰이더 캐시 디렉토리 열기" ,
"GameListContextMenuCacheManagementOpenShaderCacheDirectoryToolTip" : "응용 프로그램 셰이더 캐시가 포함된 디렉터리를 엽니다" ,
"GameListContextMenuExtractData" : "데이터 추출" ,
"GameListContextMenuExtractDataExeFS" : "ExeFS" ,
"GameListContextMenuExtractDataExeFSToolTip" : "애플리케이션의 현재 구성에서 ExeFS 추출 (업데이트 포함)" ,
"GameListContextMenuExtractDataRomFS" : "RomFS" ,
"GameListContextMenuExtractDataRomFSToolTip" : "애플리케이션의 현재 구성에서 RomFS 추출 (업데이트 포함)" ,
"GameListContextMenuExtractDataLogo" : "Logo" ,
"GameListContextMenuExtractDataLogoToolTip" : "애플리케이션의 현재 구성에서 로고 섹션 추출 (업데이트 포함)" ,
"StatusBarGamesLoaded" : "로드된 {0}/{1}개의 게임" ,
"StatusBarSystemVersion" : "시스템 버전 : {0}" ,
"Settings" : "조절" ,
"SettingsTabGeneral" : "사용자 인터페이스" ,
"SettingsTabGeneralGeneral" : "일반" ,
"SettingsTabGeneralEnableDiscordRichPresence" : "Discord Rich Presence 활성화" ,
"SettingsTabGeneralCheckUpdatesOnLaunch" : "열 때 업데이트 확인" ,
"SettingsTabGeneralShowConfirmExitDialog" : "\"종료 확인\" 대화 상자 표시" ,
"SettingsTabGeneralHideCursorOnIdle" : "유휴 상태에서 커서 숨기기" ,
"SettingsTabGeneralGameDirectories" : "게임 디렉토리들" ,
"SettingsTabGeneralAdd" : "추가하다" ,
"SettingsTabGeneralRemove" : "제거하다" ,
"SettingsTabSystem" : "체계" ,
"SettingsTabSystemCore" : "핵심" ,
"SettingsTabSystemSystemRegion" : "시스템 영역 :" ,
"SettingsTabSystemSystemRegionJapan" : "일본" ,
"SettingsTabSystemSystemRegionUSA" : "미국" ,
"SettingsTabSystemSystemRegionEurope" : "유럽" ,
"SettingsTabSystemSystemRegionAustralia" : "호주" ,
"SettingsTabSystemSystemRegionChina" : "중국" ,
"SettingsTabSystemSystemRegionKorea" : "한국" ,
"SettingsTabSystemSystemRegionTaiwan" : "대만" ,
"SettingsTabSystemSystemLanguage" : "시스템 언어 :" ,
"SettingsTabSystemSystemLanguageJapanese" : "일본어" ,
"SettingsTabSystemSystemLanguageAmericanEnglish" : "영어(미국)" ,
"SettingsTabSystemSystemLanguageFrench" : "프랑스어" ,
"SettingsTabSystemSystemLanguageGerman" : "독일어" ,
"SettingsTabSystemSystemLanguageItalian" : "이탈리아어" ,
"SettingsTabSystemSystemLanguageSpanish" : "스페인어" ,
"SettingsTabSystemSystemLanguageChinese" : "중국어" ,
"SettingsTabSystemSystemLanguageKorean" : "한국어" ,
"SettingsTabSystemSystemLanguageDutch" : "네덜란드 어" ,
"SettingsTabSystemSystemLanguagePortuguese" : "포르투갈어" ,
"SettingsTabSystemSystemLanguageRussian" : "러시아어" ,
"SettingsTabSystemSystemLanguageTaiwanese" : "대만어" ,
"SettingsTabSystemSystemLanguageBritishEnglish" : "영어(영국)" ,
"SettingsTabSystemSystemLanguageCanadianFrench" : "프랑스어(캐나다)" ,
"SettingsTabSystemSystemLanguageLatinAmericanSpanish" : "스페인어(라틴 아메리카)" ,
"SettingsTabSystemSystemLanguageSimplifiedChinese" : "중국어 간체" ,
"SettingsTabSystemSystemLanguageTraditionalChinese" : "중국어 번체" ,
"SettingsTabSystemSystemTimeZone" : "시스템 시간대 :" ,
"SettingsTabSystemSystemTime" : "시스템 시간 :" ,
"SettingsTabSystemEnableVsync" : "수직 동기화 사용" ,
"SettingsTabSystemEnablePptc" : "PPTC(Profiled Persistent Translation Cache) 활성화" ,
"SettingsTabSystemEnableFsIntegrityChecks" : "FS 무결성 검사 활성화" ,
"SettingsTabSystemAudioBackend" : "오디오 백엔드 :" ,
"SettingsTabSystemAudioBackendDummy" : "Dummy" ,
"SettingsTabSystemAudioBackendOpenAL" : "OpenAL" ,
"SettingsTabSystemAudioBackendSoundIO" : "SoundIO" ,
"SettingsTabSystemAudioBackendSDL2" : "SDL2" ,
"SettingsTabSystemHacks" : "해킹" ,
2022-07-28 21:14:37 -04:00
"SettingsTabSystemHacksNote" : " (불안정을 일으킬 수 있음)" ,
2022-11-16 17:27:42 -05:00
"SettingsTabSystemExpandDramSize" : "DRAM 크기를 6GiB로 확장" ,
2022-05-15 07:30:15 -04:00
"SettingsTabSystemIgnoreMissingServices" : "누락된 서비스 무시" ,
"SettingsTabGraphics" : "제도법" ,
Vulkan backend (#2518)
* WIP Vulkan implementation
* No need to initialize attributes on the SPIR-V backend anymore
* Allow multithreading shaderc and vkCreateShaderModule
You'll only really see the benefit here with threaded-gal or parallel shader cache compile.
Fix shaderc multithreaded changes
Thread safety for shaderc Options constructor
Dunno how they managed to make a constructor not thread safe, but you do you. May avoid some freezes.
* Support multiple levels/layers for blit.
Fixes MK8D when scaled, maybe a few other games. AMD software "safe" blit not supported right now.
* TextureStorage should hold a ref of the foreign storage, otherwise it might be freed while in use
* New depth-stencil blit method for AMD
* Workaround for AMD driver bug
* Fix some tessellation related issues (still doesn't work?)
* Submit command buffer before Texture GetData. (UE4 fix)
* DrawTexture support
* Fix BGRA on OpenGL backend
* Fix rebase build break
* Support format aliasing on SetImage
* Fix uniform buffers being lost when bindings are out of order
* Fix storage buffers being lost when bindings are out of order
(also avoid allocations when changing bindings)
* Use current command buffer for unscaled copy (perf)
Avoids flushing commands and renting a command buffer when fulfilling copy dependencies and when games do unscaled copies.
* Update to .net6
* Update Silk.NET to version 2.10.1
Somehow, massive performance boost. Seems like their vtable for looking up vulkan methods was really slow before.
* Fix PrimitivesGenerated query, disable Transform Feedback queries for now
Lets Splatoon 2 work on nvidia. (mostly)
* Update counter queue to be similar to the OGL one
Fixes softlocks when games had to flush counters.
* Don't throw when ending conditional rendering for now
This should be re-enabled when conditional rendering is enabled on nvidia etc.
* Update findMSB/findLSB to match master's instruction enum
* Fix triangle overlay on SMO, Captain Toad, maybe others?
* Don't make Intel Mesa pay for Intel Windows bugs
* Fix samplers with MinFilter Linear or Nearest (fixes New Super Mario Bros U Deluxe black borders)
* Update Spv.Generator
* Add alpha test emulation on shader (but no shader specialisation yet...)
* Fix R4G4B4A4Unorm texture format permutation
* Validation layers should be enabled for any log level other than None
* Add barriers around vkCmdCopyImage
Write->Read barrier for src image (we want to wait for a write to read it)
Write->Read barrier for dst image (we want to wait for the copy to complete before use)
* Be a bit more careful with texture access flags, since it can be used for anything
* Device local mapping for all buffers
May avoid issues with drivers with NVIDIA on linux/older gpus on windows when using large buffers (?)
Also some performance things and fixes issues with opengl games loading textures weird.
* Cleanup, disable device local buffers for now.
* Add single queue support
Multiqueue seems to be a bit more responsive on NVIDIA. Should fix texture flush on intel. AMD has been forced to single queue for an experiment.
* Fix some validation errors around extended dynamic state
* Remove Intel bug workaround, it was fixed on the latest driver
* Use circular queue for checking consumption on command buffers
Speeds up games that spam command buffers a little. Avoids checking multiple command buffers if multiple are active at once.
* Use SupportBufferUpdater, add single layer flush
* Fix counter queue leak when game decides to use host conditional rendering
* Force device local storage for textures (fixes linux performance)
* Port #3019
* Insert barriers around vkCmdBlitImage (may fix some amd flicker)
* Fix transform feedback on Intel, gl_Position feedback and clears to inexistent depth buffers
* Don't pause transform feedback for multi draw
* Fix draw outside of render pass and missing capability
* Workaround for wrong last attribute on AMD (affects FFVII, STRIKERS1945, probably more)
* Better workaround for AMD vertex buffer size alignment issue
* More instructions + fixes on SPIR-V backend
* Allow custom aspect ratio on Vulkan
* Correct GTK UI status bar positions
* SPIR-V: Functions must always end with a return
* SPIR-V: Fix ImageQuerySizeLod
* SPIR-V: Set DepthReplacing execution mode when FragDepth is modified
* SPIR-V: Implement LoopContinue IR instruction
* SPIR-V: Geometry shader support
* SPIR-V: Use correct binding number on storage buffers array
* Reduce allocations for Spir-v serialization
Passes BinaryWriter instead of the stream to Write and WriteOperand
- Removes creation of BinaryWriter for each instruction
- Removes allocations for literal string
* Some optimizations to Spv.Generator
- Dictionary for lookups of type declarations, constants, extinst
- LiteralInteger internal data format -> ushort
- Deterministic HashCode implementation to avoid spirv result not being the same between runs
- Inline operand list instead of List<T>, falls back to array if many operands. (large performance boost)
TODO: improve instruction allocation, structured program creator, ssa?
* Pool Spv.Generator resources, cache delegates, spv opts
- Pools for Instructions and LiteralIntegers. Can be passed in when creating the generator module.
- NewInstruction is called instead of new Instruction()
- Ryujinx SpirvGenerator passes in some pools that are static. The idea is for these to be shared between threads eventually.
- Estimate code size when creating the output MemoryStream
- LiteralInteger pools using ThreadStatic pools that are initialized before and after creation... not sure of a better way since the way these are created is via implicit cast.
Also, cache delegates for Spv.Generator for functions that are passed around to GenerateBinary etc, since passing the function raw creates a delegate on each call.
TODO: update python spv cs generator to make the coregrammar with NewInstruction and the `params` overloads.
* LocalDefMap for Ssa Rewriter
Rather than allocating a large array of all registers for each block in the shader, allocate one array of all registers and clear it between blocks. Reduces allocations in the shader translator.
* SPIR-V: Transform feedback support
* SPIR-V: Fragment shader interlock support (and image coherency)
* SPIR-V: Add early fragment tests support
* SPIR-V: Implement SwizzleAdd, add missing Triangles ExecutionMode for geometry shaders, remove SamplerType field from TextureMeta
* Don't pass depth clip state right now (fix decals)
Explicitly disabling it is incorrect. OpenGL currently automatically disables based on depth clamp, which is the behaviour if this state is omitted.
* Multisampling support
* Multisampling: Use resolve if src samples count > dst samples count
* Multisampling: We can only resolve for unscaled copies
* SPIR-V: Only add FSI exec mode if used.
* SPIR-V: Use ConstantComposite for Texture Offset Vector
Fixes a bunch of freezes with SPIR-V on AMD hardware, and validation errors. Note: Obviously assumes input offsets are constant, which they currently are.
* SPIR-V: Don't OpReturn if we already OpExit'ed
Fixes spir-v parse failure and stack smashing in RADV (obviously you still need bolist)
* SPIR-V: Only use input attribute type for input attributes
Output vertex attributes should always be of type float.
* Multithreaded Pipeline Compilation
* Address some feedback
* Make this 32
* Update topology with GpuAccessorState
* Cleanup for merge (note: disables spir-v)
* Make more robust to shader compilation failure
- Don't freeze when GLSL compilation fails
- Background SPIR-V pipeline compile failure results in skipped draws, similar to GLSL compilation failure.
* Fix Multisampling
* Only update fragment scale count if a vertex texture needs a scale.
Fixes a performance regression introduced by texture scaling in the vertex stage where support buffer updates would be very frequent, even at 1x, if any textures were used on the vertex stage.
This check doesn't exactly look cheap (a flag in the shader stage would probably be preferred), but it is much cheaper than uploading scales in both vulkan and opengl, so it will do for now.
* Use a bitmap to do granular tracking for buffer uploads.
This path is only taken if the much faster check of "is the buffer rented at all" is triggered, so it doesn't actually end up costing too much, and the time saved by not ending render passes (and on gpu for not waiting on barriers) is probably helpful.
Avoids ending render passes to update buffer data (not all the time)
- 140-180 to 35-45 in SMO metro kingdom (these updates are in the UI)
- Very variable 60-150(!) to 16-25 in mario kart 8 (these updates are in the UI)
As well as allowing more data to be preloaded persistently, this will also allow more data to be loaded in the preload buffer, which should be faster as it doesn't need to insert barriers between draws. (and on tbdr, does not need to flush and reload tile memory)
Improves performance in GPU limited scenarios. Should notably improve performance on TBDR gpus. Still a lot more to do here.
* Copy query results after RP ends, rather than ending to copy
We need to end the render pass to get the data (submit command buffer) anyways...
Reduces render passes created in games that use queries.
* Rework Query stuff a bit to avoid render pass end
Tries to reset returned queries in background when possible, rather than ending the render pass.
Still ends render pass when resetting a counter after draws, but maybe that can be solved too. (by just pulling an empty object off the pool?)
* Remove unnecessary lines
Was for testing
* Fix validation error for query reset
Need to think of a better way to do this.
* SPIR-V: Fix SwizzleAdd and some validation errors
* SPIR-V: Implement attribute indexing and StoreAttribute
* SPIR-V: Fix TextureSize for MS and Buffer sampler types
* Fix relaunch issues
* SPIR-V: Implement LogicalExclusiveOr
* SPIR-V: Constant buffer indexing support
* Ignore unsupported attributes rather than throwing (matches current GLSL behaviour)
* SPIR-V: Implement tessellation support
* SPIR-V: Geometry shader passthrough support
* SPIR-V: Implement StoreShader8/16 and StoreStorage8/16
* SPIR-V: Resolution scale support and fix TextureSample multisample with LOD bug
* SPIR-V: Fix field index for scale count
* SPIR-V: Fix another case of wrong field index
* SPIRV/GLSL: More scaling related fixes
* SPIR-V: Fix ImageLoad CompositeExtract component type
* SPIR-V: Workaround for Intel FrontFacing bug
* Enable SPIR-V backend by default
* Allow null samplers (samplers are not required when only using texelFetch to access the texture)
* Fix some validation errors related to texel block view usage flag and invalid image barrier base level
* Use explicit subgroup size if we can (might fix some block flickering on AMD)
* Take componentMask and scissor into account when clearing framebuffer attachments
* Add missing barriers around CmdFillBuffer (fixes Monster Hunter Rise flickering on NVIDIA)
* Use ClampToEdge for Clamp sampler address mode on Vulkan (fixes Hollow Knight)
Clamp is unsupported on Vulkan, but ClampToEdge behaves almost the same. ClampToBorder on the other hand (which was being used before) is pretty different
* Shader specialization for new Vulkan required state (fixes remaining alpha test issues, vertex stretching on AMD on Crash Bandicoot, etc)
* Check if the subgroup size is supported before passing a explicit size
* Only enable ShaderFloat64 if the GPU supports it
* We don't need to recompile shaders if alpha test state changed but alpha test is disabled
* Enable shader cache on Vulkan and implement MultiplyHighS32/U32 on SPIR-V (missed those before)
* Fix pipeline state saving before it is updated.
This should fix a few warnings and potential stutters due to bad pipeline states being saved in the cache. You may need to clear your guest cache.
* Allow null samplers on OpenGL backend
* _unit0Sampler should be set only for binding 0
* Remove unused PipelineConverter format variable (was causing IOR)
* Raise textures limit to 64 on Vulkan
* No need to pack the shader binaries if shader cache is disabled
* Fix backbuffer not being cleared and scissor not being re-enabled on OpenGL
* Do not clear unbound framebuffer color attachments
* Geometry shader passthrough emulation
* Consolidate UpdateDepthMode and GetDepthMode implementation
* Fix A1B5G5R5 texture format and support R4G4 on Vulkan
* Add barrier before use of some modified images
* Report 32 bit query result on AMD windows (smo issue)
* Add texture recompression support (disabled for now)
It recompresses ASTC textures into BC7, which might reduce VRAM usage significantly on games that uses ASTC textures
* Do not report R4G4 format as supported on Vulkan
It was causing mario head to become white on Super Mario 64 (???)
* Improvements to -1 to 1 depth mode.
- Transformation is only applied on the last stage in the vertex pipeline.
- Should fix some issues with geometry and tessellation (hopefully)
- Reading back FragCoord Z on fragment will transform back to -1 to 1.
* Geometry Shader index count from ThreadsPerInputPrimitive
Generally fixes SPIR-V emitting too many triangles, may change games in OpenGL
* Remove gl_FragDepth scaling
This is always 0-1; the other two issues were causing the problems. Fixes regression with Xenoblade.
* Add Gl StencilOp enum values to Vulkan
* Update guest cache to v1.1 (due to specialization state changes)
This will explode your shader cache from earlier vulkan build, but it must be done. :pensive:
* Vulkan/SPIR-V support for viewport inverse
* Fix typo
* Don't create query pools for unsupported query types
* Return of the Vector Indexing Bug
One day, everyone will get this right.
* Check for transform feedback query support
Sometimes transform feedback is supported without the query type.
* Fix gl_FragCoord.z transformation
FragCoord.z is always in 0-1, even when the real depth range is -1 to 1. Turns out the only bug was geo and tess stage outputs.
Fixes Pokemon Sword/Shield, possibly others.
* Fix Avalonia Rebase
Vulkan is currently not available on Avalonia, but the build does work and you can use opengl.
* Fix headless build
* Add support for BC6 and BC7 decompression, decompress all BC formats if they are not supported by the host
* Fix BCn 4/5 conversion, GetTextureTarget
BCn 4/5 could generate invalid data when a line's size in bytes was not divisible by 4, which both backends expect.
GetTextureTarget was not creating a view with the replacement format.
* Fix dependency
* Fix inverse viewport transform vector type on SPIR-V
* Do not require null descriptors support
* If MultiViewport is not supported, do not try to set more than one viewport/scissor
* Bounds check on bitmap add.
* Flush queries on attachment change rather than program change
Occlusion queries are usually used in a depth only pass so the attachments changing is a better indication of the query block ending.
Write mask changes are also considered since some games do depth only pass by setting 0 write mask on all the colour targets.
* Add support for avalonia (#6)
* add avalonia support
* only lock around skia flush
* addressed review
* cleanup
* add fallback size if avalonia attempts to render but the window size is 0. read desktop scale after enabling dpi check
* fix getting window handle on linux. skip render is size is 0
* Combine non-buffer with buffer image descriptor sets
* Support multisample texture copy with automatic resolve on Vulkan
* Remove old CompileShader methods from the Vulkan backend
* Add minimal pipeline layouts that only contains used bindings
They are used by helper shaders, the intention is avoiding needing to recompile the shaders (from GLSL to SPIR-V) if the bindings changes on the translated guest shaders
* Pre-compile helper shader as SPIR-V, and some fixes
* Remove pre-compiled shaderc binary for Windows as its no longer needed by default
* Workaround RADV crash
Enabling the descriptor indexing extension, even if it is not used, forces the radv driver to use "bolist".
* Use RobustBufferAccess on NVIDIA gpus
Avoids the SMO waterfall triangle on older NVIDIA gpus.
* Implement GPU selector and expose texture recompression on the UI and config
* Fix and enable background compute shader compilation
Also disables warnings from shader cache pipeline misses.
* Fix error due to missing subpass dependency when Attachment Write -> Shader Read barriers are added
* If S8D24 is not supported, use D32FS8
* Ensure all fences are destroyed on dispose
* Pre-allocate arrays up front on DescriptorSetUpdater, allows the removal of some checks
* Add missing clear layer parameter after rebase
* Use selected gpu from config for avalonia (#7)
* use configured device
* address review
* Fix D32S8 copy workaround (AMD)
Fixes water in Pokemon Legends Arceus on AMD GPUs. Possibly fixes other things.
* Use push descriptors for uniform buffer updates (disabled for now)
* Push descriptor support check, buffer redundancy checks
Should make push descriptors faster, needs more testing though.
* Increase light command buffer pool to 2 command buffers, throw rather than returning invalid cbs
* Adjust bindings array sizes
* Force submit command buffers if memory in use by its resources is high
* Add workaround for AMD GCN cubemap view sins
`ImageCreateCubeCompatibleBit` seems to generally break 2D array textures with mipmaps... even if they are eventually aliased as a cubemap with mipmaps. Forcing a copy here works around the issue.
This could be used in future if enabling this bit reduces performance on certain GPUs. (mobile class is generally a worry)
Currently also enabled on Linux as I don't know if they managed to dodge this bug (someone please tell me). Not enabled on Vega at the moment, but easy to add if the issue is there.
* Add mobile, non-RX variants to the GCN regex.
Also make sure that the 3 digit ones only include numbers starting with 7 or 8.
* Increase image limit per stage from 8 to 16
Xenoblade Chronicles 2 was hiting the limit of 8
* Minor code cleanup
* Fix NRE caused by SupportBufferUpdater calling pipeline ClearBuffer
* Add gpu selector to Avalonia (#8)
* Add gpu selector to avalonia settings
* show backend label on window
* some fixes
* address review
* Minor changes to the Avalonia UI
* Update graphics window UI and locales. (#9)
* Update xaml and update locales
* locale updates
Did my best here but likely needs to be checked by native speakers, especially the use of ampersands in greek, russian and turkish?
* Fix locales with more (?) correct translations.
* add separator to render widget
* fix spanish and portuguese
* Add new IdList, replaces buffer list that could not remove elements and had unbounded growth
* Don't crash the settings window if Vulkan is not supported
* Fix Actions menu not being clickable on GTK UI after relaunch
* Rename VulkanGraphicsDevice to VulkanRenderer and Renderer to OpenGLRenderer
* Fix IdList and make it not thread safe
* Revert useless OpenGL format table changes
* Fix headless project build
* List throws ArgumentOutOfRangeException
* SPIR-V: Fix tessellation
* Increase shader cache version due to tessellation fix
* Reduce number of Sync objects created (improves perf in some specific titles)
* Fix vulkan validation errors for NPOT compressed upload and GCN workaround.
* Add timestamp to the shader cache and force rebuild if host cache is outdated
* Prefer Mail box present mode for popups (#11)
* Prefer Mail box present mode
* fix debug
* switch present mode when vsync is toggled
* only disable vsync on the main window
* SPIR-V: Fix geometry shader input load with transform feedback
* BC7 Encoder: Prefer more precision on alpha rather than RGB when alpha is 0
* Fix Avalonia build
* Address initial PR feedback
* Only set transform feedback outputs on last vertex stage
* Address riperiperi PR feedback
* Remove outdated comment
* Remove unused constructor
* Only throw for negative results
* Throw for QueueSubmit and other errors
No point in delaying the inevitable
* Transform feedback decorations inside gl_PerVertex struct breaks the NVIDIA compiler
* Fix some resolution scale issues
* No need for two UpdateScale calls
* Fix comments on SPIR-V generator project
* Try to fix shader local memory size
On DOOM, a shader is using local memory, but both Low and High size are 0, CRS size is 1536, it seems to store on that region?
* Remove RectangleF that is now unused
* Fix ImageGather with multiple offsets
Needs ImageGatherExtended capability, and must use `ConstantComposite` instead of `CompositeConstruct`
* Address PR feedback from jD in all projects except Avalonia
* Address most of jD PR feedback on Avalonia
* Remove unsafe
* Fix VulkanSkiaGpu
* move present mode request out of Create Swapchain method
* split more parts of create swapchain
* addressed reviews
* addressed review
* Address second batch of jD PR feedback
* Fix buffer <-> image copy row length and height alignment
AlignUp helper does not support NPOT alignment, and ASTC textures can have NPOT block sizes
* Better fix for NPOT alignment issue
* Use switch expressions on Vulkan EnumConversion
Thanks jD
* Fix Avalonia build
* Add Vulkan selection prompt on startup
* Grammar fixes on Vulkan prompt message
* Add missing Vulkan migration flag
Co-authored-by: riperiperi <rhy3756547@hotmail.com>
Co-authored-by: Emmanuel Hansen <emmausssss@gmail.com>
Co-authored-by: MutantAura <44103205+MutantAura@users.noreply.github.com>
2022-07-31 17:26:06 -04:00
"SettingsTabGraphicsAPI" : "그래픽 API" ,
2022-05-15 07:30:15 -04:00
"SettingsTabGraphicsEnableShaderCache" : "셰이더 캐시 활성화" ,
"SettingsTabGraphicsAnisotropicFiltering" : "이방성 필터링 :" ,
"SettingsTabGraphicsAnisotropicFilteringAuto" : "자동적 인" ,
"SettingsTabGraphicsAnisotropicFiltering2x" : "2x" ,
"SettingsTabGraphicsAnisotropicFiltering4x" : "4x" ,
"SettingsTabGraphicsAnisotropicFiltering8x" : "8x" ,
"SettingsTabGraphicsAnisotropicFiltering16x" : "16x" ,
"SettingsTabGraphicsResolutionScale" : "해상도 스케일 :" ,
"SettingsTabGraphicsResolutionScaleCustom" : "사용자 지정(권장하지 않음)" ,
"SettingsTabGraphicsResolutionScaleNative" : "기본 (720p/1080p)" ,
"SettingsTabGraphicsResolutionScale2x" : "2x (1440p/2160p)" ,
"SettingsTabGraphicsResolutionScale3x" : "3x (2160p/3240p)" ,
"SettingsTabGraphicsResolutionScale4x" : "4x (2880p/4320p)" ,
"SettingsTabGraphicsAspectRatio" : "종횡비 :" ,
"SettingsTabGraphicsAspectRatio4x3" : "4:3" ,
"SettingsTabGraphicsAspectRatio16x9" : "16:9" ,
"SettingsTabGraphicsAspectRatio16x10" : "16:10" ,
"SettingsTabGraphicsAspectRatio21x9" : "21:9" ,
"SettingsTabGraphicsAspectRatio32x9" : "32:9" ,
"SettingsTabGraphicsAspectRatioStretch" : "창에 맞게 늘리기" ,
"SettingsTabGraphicsDeveloperOptions" : "개발자 옵션" ,
"SettingsTabGraphicsShaderDumpPath" : "그래픽 쉐이더 덤프 경로 :" ,
"SettingsTabLogging" : "로깅" ,
"SettingsTabLoggingLogging" : "로깅" ,
"SettingsTabLoggingEnableLoggingToFile" : "파일에 로깅 활성화" ,
"SettingsTabLoggingEnableStubLogs" : "스텁 로그 켜기 " ,
"SettingsTabLoggingEnableInfoLogs" : "정보 로그 켜기" ,
"SettingsTabLoggingEnableWarningLogs" : "경고 로그 켜기" ,
"SettingsTabLoggingEnableErrorLogs" : "오류 로그 켜기" ,
"SettingsTabLoggingEnableGuestLogs" : "게스트 로그 켜기" ,
"SettingsTabLoggingEnableFsAccessLogs" : "Fs 액세스 로그 켜기" ,
"SettingsTabLoggingFsGlobalAccessLogMode" : "Fs 전역 액세스 로그 모드 :" ,
"SettingsTabLoggingDeveloperOptions" : "개발자 옵션 (경고 : 성능이 저하됩니다.)" ,
"SettingsTabLoggingOpenglLogLevel" : "OpenGL 로그 수준 :" ,
"SettingsTabLoggingOpenglLogLevelNone" : "없음" ,
"SettingsTabLoggingOpenglLogLevelError" : "오류" ,
"SettingsTabLoggingOpenglLogLevelPerformance" : "감속" ,
"SettingsTabLoggingOpenglLogLevelAll" : "모두" ,
"SettingsTabLoggingEnableDebugLogs" : "디버그 로그 사용" ,
"SettingsTabInput" : "입력" ,
"SettingsTabInputEnableDockedMode" : "도킹 모드 활성화" ,
"SettingsTabInputDirectKeyboardAccess" : "직접 키보드 액세스" ,
2022-12-01 21:31:21 -05:00
"SettingsButtonOk" : "좋아" ,
"SettingsButtonCancel" : "취소" ,
2022-05-15 07:30:15 -04:00
"SettingsButtonApply" : "적용하다" ,
"ControllerSettingsPlayer" : "플레이어" ,
"ControllerSettingsPlayer1" : "플레이어 1" ,
"ControllerSettingsPlayer2" : "플레이어 2" ,
"ControllerSettingsPlayer3" : "플레이어 3" ,
"ControllerSettingsPlayer4" : "플레이어 4" ,
"ControllerSettingsPlayer5" : "플레이어 5" ,
"ControllerSettingsPlayer6" : "플레이어 6" ,
"ControllerSettingsPlayer7" : "플레이어 7" ,
"ControllerSettingsPlayer8" : "플레이어 8" ,
"ControllerSettingsHandheld" : "휴대용" ,
"ControllerSettingsInputDevice" : "입력 장치" ,
"ControllerSettingsRefresh" : "새로 고치다" ,
"ControllerSettingsDeviceDisabled" : "장애가있는" ,
"ControllerSettingsControllerType" : "컨트롤러 유형" ,
"ControllerSettingsControllerTypeHandheld" : "휴대용" ,
"ControllerSettingsControllerTypeProController" : "Pro Controller" ,
"ControllerSettingsControllerTypeJoyConPair" : "JoyCon 페어" ,
"ControllerSettingsControllerTypeJoyConLeft" : "JoyCon 왼쪽" ,
"ControllerSettingsControllerTypeJoyConRight" : "JoyCon 오른쪽" ,
"ControllerSettingsProfile" : "프로필" ,
"ControllerSettingsProfileDefault" : "기본" ,
"ControllerSettingsLoad" : "짐" ,
"ControllerSettingsAdd" : "추가하다" ,
"ControllerSettingsRemove" : "제거하다" ,
"ControllerSettingsButtons" : "버튼" ,
"ControllerSettingsButtonA" : "A" ,
"ControllerSettingsButtonB" : "B" ,
"ControllerSettingsButtonX" : "X" ,
"ControllerSettingsButtonY" : "Y" ,
"ControllerSettingsButtonPlus" : "+" ,
"ControllerSettingsButtonMinus" : "-" ,
"ControllerSettingsDPad" : "Directional Pad" ,
"ControllerSettingsDPadUp" : "위로" ,
"ControllerSettingsDPadDown" : "아래에" ,
"ControllerSettingsDPadLeft" : "왼쪽" ,
"ControllerSettingsDPadRight" : "오른쪽" ,
"ControllerSettingsLStick" : "왼쪽 스틱" ,
"ControllerSettingsLStickButton" : "단추" ,
"ControllerSettingsLStickUp" : "위로" ,
"ControllerSettingsLStickDown" : "아래에" ,
"ControllerSettingsLStickLeft" : "왼쪽" ,
"ControllerSettingsLStickRight" : "오른쪽" ,
"ControllerSettingsLStickStick" : "막대" ,
"ControllerSettingsLStickInvertXAxis" : "스틱 X축 반전" ,
"ControllerSettingsLStickInvertYAxis" : "스틱 Y축 반전" ,
"ControllerSettingsLStickDeadzone" : "데드 존 :" ,
"ControllerSettingsRStick" : "오른쪽 스틱" ,
"ControllerSettingsRStickButton" : "단추" ,
"ControllerSettingsRStickUp" : "위로" ,
"ControllerSettingsRStickDown" : "아래에" ,
"ControllerSettingsRStickLeft" : "왼쪽" ,
"ControllerSettingsRStickRight" : "오른쪽" ,
"ControllerSettingsRStickStick" : "Stick" ,
"ControllerSettingsRStickInvertXAxis" : "스틱 X축 반전" ,
"ControllerSettingsRStickInvertYAxis" : "스틱 Y축 반전" ,
"ControllerSettingsRStickDeadzone" : "데드 존 :" ,
"ControllerSettingsTriggersLeft" : "왼쪽 트리거" ,
"ControllerSettingsTriggersRight" : "오른쪽 트리거" ,
"ControllerSettingsTriggersButtonsLeft" : "트리거 버튼 왼쪽" ,
"ControllerSettingsTriggersButtonsRight" : "트리거 버튼 오른쪽" ,
"ControllerSettingsTriggers" : "방아쇠" ,
"ControllerSettingsTriggerL" : "L" ,
"ControllerSettingsTriggerR" : "R" ,
"ControllerSettingsTriggerZL" : "ZL" ,
"ControllerSettingsTriggerZR" : "ZR" ,
"ControllerSettingsLeftSL" : "SL" ,
"ControllerSettingsLeftSR" : "SR" ,
"ControllerSettingsRightSL" : "SL" ,
"ControllerSettingsRightSR" : "SR" ,
"ControllerSettingsExtraButtonsLeft" : "왼쪽 버튼" ,
"ControllerSettingsExtraButtonsRight" : "버튼 오른쪽" ,
"ControllerSettingsMisc" : "여러 가지 잡다한" ,
"ControllerSettingsTriggerThreshold" : "트리거 임계값 :" ,
"ControllerSettingsMotion" : "운동" ,
"ControllerSettingsMotionUseCemuhookCompatibleMotion" : "CemuHook 호환 모션 사용" ,
"ControllerSettingsMotionControllerSlot" : "컨트롤러 슬롯 :" ,
"ControllerSettingsMotionMirrorInput" : "미러 입력" ,
"ControllerSettingsMotionRightJoyConSlot" : "오른쪽 JoyCon 슬롯 :" ,
"ControllerSettingsMotionServerHost" : "서버 호스트 :" ,
"ControllerSettingsMotionGyroSensitivity" : "자이로 감도 :" ,
"ControllerSettingsMotionGyroDeadzone" : "자이로 데드존 :" ,
"ControllerSettingsSave" : "구하다" ,
"ControllerSettingsClose" : "출구" ,
"UserProfilesSelectedUserProfile" : "선택한 사용자 프로필 :" ,
"UserProfilesSaveProfileName" : "프로필 이름 저장" ,
"UserProfilesChangeProfileImage" : "프로필 이미지 변경" ,
"UserProfilesAvailableUserProfiles" : "사용 가능한 사용자 프로필 :" ,
"UserProfilesAddNewProfile" : "새 프로필 추가" ,
"UserProfilesDeleteSelectedProfile" : "선택한 프로필 삭제" ,
"UserProfilesClose" : "출구" ,
"ProfileImageSelectionTitle" : "프로필 이미지 선택" ,
"ProfileImageSelectionHeader" : "이미지 선택" ,
"ProfileImageSelectionNote" : "사용자 정의 프로필 이미지를 사용하거나 시스템 펌웨어에서 하나를 선택할 수 있습니다" ,
"ProfileImageSelectionImportImage" : "이미지 파일 가져오기" ,
"ProfileImageSelectionSelectAvatar" : "펌웨어 아바타 선택" ,
"InputDialogTitle" : "입력 대화 상자" ,
"InputDialogOk" : "확인" ,
"InputDialogCancel" : "취소" ,
"InputDialogAddNewProfileTitle" : "프로필 이름 선택" ,
"InputDialogAddNewProfileHeader" : "프로필 이름을 입력하세요" ,
"InputDialogAddNewProfileSubtext" : "최대 길이 : {0})" ,
"AvatarChoose" : "선택하다" ,
"AvatarSetBackgroundColor" : "배경색 설정" ,
"AvatarClose" : "출구" ,
"ControllerSettingsLoadProfileToolTip" : "프로필 로드" ,
"ControllerSettingsAddProfileToolTip" : "프로필 추가" ,
"ControllerSettingsRemoveProfileToolTip" : "프로필 제거" ,
"ControllerSettingsSaveProfileToolTip" : "프로필 저장" ,
"MenuBarFileToolsTakeScreenshot" : "스크린 샷을 찍다" ,
"MenuBarFileToolsHideUi" : "사용자 인터페이스 숨기기" ,
"GameListContextMenuToggleFavorite" : "즐겨찾기 설정" ,
"GameListContextMenuToggleFavoriteToolTip" : "이 게임이 즐겨찾기인지 여부를 전환합니다" ,
"SettingsTabGeneralTheme" : "테마" ,
"SettingsTabGeneralThemeCustomTheme" : "사용자 정의 테마 경로" ,
"SettingsTabGeneralThemeBaseStyle" : "기본 스타일" ,
"SettingsTabGeneralThemeBaseStyleDark" : "어두운" ,
"SettingsTabGeneralThemeBaseStyleLight" : "빛" ,
"SettingsTabGeneralThemeEnableCustomTheme" : "사용자 정의 테마 활성화" ,
"ButtonBrowse" : "검색" ,
2022-07-05 14:06:31 -04:00
"ControllerSettingsConfigureGeneral" : "션 구성" ,
2022-05-15 07:30:15 -04:00
"ControllerSettingsRumble" : "하인 좌석" ,
"ControllerSettingsRumbleStrongMultiplier" : "강력한 럼블 배율기" ,
"ControllerSettingsRumbleWeakMultiplier" : "약한 럼블 승수" ,
"DialogMessageSaveNotAvailableMessage" : "에 대한 세이브 데이터가 없습니다 {0} [{1:x16}]" ,
"DialogMessageSaveNotAvailableCreateSaveMessage" : "이 게임의 세이브 데이터를 생성하시겠습니까?" ,
"DialogConfirmationTitle" : "Ryujinx - 확인" ,
"DialogUpdaterTitle" : "Ryujinx - 업데이터" ,
"DialogErrorTitle" : "Ryujinx - 오류" ,
"DialogWarningTitle" : "Ryujinx - 경고" ,
"DialogExitTitle" : "Ryujinx - 출구" ,
"DialogErrorMessage" : "Ryujinx에 오류가 발생했습니다" ,
"DialogExitMessage" : "Ryujinx를 종료하시겠습니까?" ,
"DialogExitSubMessage" : "저장하지 않은 모든 데이터는 손실됩니다!" ,
"DialogMessageCreateSaveErrorMessage" : "지정된 세이브 데이터를 작성하는 중에 오류가 발생했습니다 : {0}" ,
"DialogMessageFindSaveErrorMessage" : "지정된 저장 데이터를 찾는 중에 오류가 발생했습니다 : {0}" ,
"FolderDialogExtractTitle" : "추출할 폴더 선택" ,
"DialogNcaExtractionMessage" : "{1}에서 섹션 {0} 추출···" ,
"DialogNcaExtractionTitle" : "Ryujinx - NCA 섹션 추출기" ,
"DialogNcaExtractionMainNcaNotFoundErrorMessage" : "추출 실패. 선택한 파일에 기본 NCA가 없습니다." ,
"DialogNcaExtractionCheckLogErrorMessage" : "추출 실패. 자세한 내용은 로그 파일을 읽으십시오." ,
"DialogNcaExtractionSuccessMessage" : "추출이 성공적으로 완료되었습니다." ,
"DialogUpdaterConvertFailedMessage" : "현재 Ryujinx 버전을 변환하지 못했습니다." ,
"DialogUpdaterCancelUpdateMessage" : "업데이트 취소 중!" ,
"DialogUpdaterAlreadyOnLatestVersionMessage" : "이미 최신 버전의 Ryujinx를 사용하고 있습니다!" ,
"DialogUpdaterFailedToGetVersionMessage" : "Github 릴리스에서 릴리스 정보를 가져오는 중에 오류가 발생했습니다. 이는 GitHub Actions에서 새 릴리스를 컴파일하는 경우 발생할 수 있습니다. 몇 분 후에 다시 시도하십시오." ,
"DialogUpdaterConvertFailedGithubMessage" : "Github Release에서 받은 Ryujinx 버전을 변환하지 못했습니다." ,
"DialogUpdaterDownloadingMessage" : "업데이트 다운로드 중···" ,
"DialogUpdaterExtractionMessage" : "업데이트 추출···" ,
"DialogUpdaterRenamingMessage" : "업데이트 이름 바꾸기···" ,
"DialogUpdaterAddingFilesMessage" : "새 업데이트 추가···" ,
"DialogUpdaterCompleteMessage" : "업데이트 완료!" ,
"DialogUpdaterRestartMessage" : "지금 Ryujinx를 다시 시작하시겠습니까?" ,
"DialogUpdaterArchNotSupportedMessage" : "지원되는 시스템 아키텍처를 실행하고 있지 않습니다!" ,
"DialogUpdaterArchNotSupportedSubMessage" : "(x86 시스템만 지원됩니다!)" ,
"DialogUpdaterNoInternetMessage" : "인터넷에 연결되어 있지 않습니다!" ,
"DialogUpdaterNoInternetSubMessage" : "인터넷 연결이 작동하는지 확인하십시오!" ,
"DialogUpdaterDirtyBuildMessage" : "Ryujinx의 더러운 빌드는 업데이트할 수 없습니다!" ,
"DialogUpdaterDirtyBuildSubMessage" : "지원되는 버전을 찾고 있다면 https://ryujinx.org/에서 Ryujinx를 다운로드하십시오." ,
"DialogRestartRequiredMessage" : "재시작 필요" ,
"DialogThemeRestartMessage" : "테마가 저장되었습니다. 테마를 적용하려면 다시 시작해야 합니다." ,
"DialogThemeRestartSubMessage" : "다시 시작하시겠습니까?" ,
"DialogFirmwareInstallEmbeddedMessage" : "이 게임에 내장된 펌웨어를 설치하시겠습니까? (펌웨어 {0})" ,
"DialogFirmwareInstallEmbeddedSuccessMessage" : "설치된 펌웨어를 찾을 수 없지만 Ryujinx는 제공된 게임에서 펌웨어 {0} 설치할 수 있었습니다.\n이제 에뮬레이터가 시작됩니다." ,
"DialogFirmwareNoFirmwareInstalledMessage" : "펌웨어가 설치되지 않았습니다" ,
"DialogFirmwareInstalledMessage" : "펌웨어 {0} 설치되었습니다." ,
"DialogOpenSettingsWindowLabel" : "설정 창 열기" ,
"DialogControllerAppletTitle" : "컨트롤러 애플릿" ,
"DialogMessageDialogErrorExceptionMessage" : "메시지 대화 상자를 표시하는 동안 오류가 발생했습니다 : {0}" ,
"DialogSoftwareKeyboardErrorExceptionMessage" : "소프트웨어 키보드를 표시하는 동안 오류가 발생했습니다 : {0}" ,
"DialogErrorAppletErrorExceptionMessage" : "ErrorApplet 대화 상자를 표시하는 동안 오류가 발생했습니다 : {0}" ,
"DialogUserErrorDialogMessage" : "{0}: {1}" ,
"DialogUserErrorDialogInfoMessage" : "\n이 오류를 수정하는 방법에 대한 자세한 내용은 설정 가이드를 따르십시오" ,
"DialogUserErrorDialogTitle" : "Ryuijnx의 오류 ({0})" ,
"DialogAmiiboApiTitle" : "Amiibo API" ,
"DialogAmiiboApiFailFetchMessage" : "API에서 정보를 가져오는 동안 오류가 발생했습니다." ,
"DialogAmiiboApiConnectErrorMessage" : "Amiibo API 서버에 연결할 수 없습니다. 서비스가 다운되었거나 인터넷 연결이 오프라인인지 확인해야 할 수 있습니다." ,
"DialogProfileInvalidProfileErrorMessage" : "프로필 AAA는 현재 입력 구성 시스템과 호환되지 않습니다." ,
"DialogProfileDefaultProfileOverwriteErrorMessage" : "기본 프로필을 덮어쓸 수 없습니다" ,
"DialogProfileDeleteProfileTitle" : "프로필 삭제" ,
"DialogProfileDeleteProfileMessage" : "이 작업은 되돌릴 수 없습니다. 계속하시겠습니까?" ,
"DialogWarning" : "경고" ,
"DialogPPTCDeletionMessage" : "{0}에\n\n 대한 PPTC 캐시를 삭제하려고 합니다.\n\n계속하시겠습니까?" ,
"DialogPPTCDeletionErrorMessage" : "{0} : {1}에서 PPTC 캐시를 제거하는 동안 오류가 발생했습니다." ,
"DialogShaderDeletionMessage" : "{0}에\n\n 대한 셰이더 캐시를 삭제하려고 합니다.\n\n계속하시겠습니까?" ,
"DialogShaderDeletionErrorMessage" : "{0} : {1}에서 셰이더 캐시를 제거하는 동안 오류가 발생했습니다." ,
"DialogRyujinxErrorMessage" : "Ryujinx에 오류가 발생했습니다" ,
"DialogInvalidTitleIdErrorMessage" : "UI 오류 : 선택한 게임에 유효한 제목 ID가 없습니다" ,
"DialogFirmwareInstallerFirmwareNotFoundErrorMessage" : "{0}에서 유효한 시스템 펌웨어를 찾을 수 없습니다." ,
"DialogFirmwareInstallerFirmwareInstallTitle" : "펌웨어 {0} 설치" ,
"DialogFirmwareInstallerFirmwareInstallMessage" : "시스템 버전 {0}가 설치되려고 합니다" ,
"DialogFirmwareInstallerFirmwareInstallSubMessage" : "\n\n이것은 현재 설치된 버전 {0}를 대체합니다." ,
"DialogFirmwareInstallerFirmwareInstallConfirmMessage" : "\n\n계속하시겠습니까?" ,
"DialogFirmwareInstallerFirmwareInstallWaitMessage" : "펌웨어 설치···" ,
"DialogFirmwareInstallerFirmwareInstallSuccessMessage" : "시스템 버전 {0}가 성공적으로 설치되었습니다." ,
"DialogUserProfileDeletionWarningMessage" : "선택한 프로필이 삭제되면 사용 가능한 다른 프로필이 없습니다" ,
"DialogUserProfileDeletionConfirmMessage" : "선택한 프로필을 삭제하시겠습니까" ,
"DialogControllerSettingsModifiedConfirmMessage" : "현재 컨트롤러 설정이 업데이트되었습니다." ,
"DialogControllerSettingsModifiedConfirmSubMessage" : "저장하시겠습니까?" ,
"DialogDlcLoadNcaErrorMessage" : "{0}. 오류 파일 : {1}" ,
"DialogDlcNoDlcErrorMessage" : "지정한 파일에 선택한 타이틀의 DLC가 없습니다!" ,
"DialogPerformanceCheckLoggingEnabledMessage" : "개발자 전용으로 설계된 디버그 로깅을 활성화했습니다." ,
"DialogPerformanceCheckLoggingEnabledConfirmMessage" : "최적의 성능을 위해 디버그 로깅을 비활성화하는 것이 좋습니다. 지금 디버그 로깅을 비활성화하시겠습니까?" ,
"DialogPerformanceCheckShaderDumpEnabledMessage" : "Y개발자만 사용하도록 설계된 셰이더 덤핑이 활성화되어 있습니다." ,
"DialogPerformanceCheckShaderDumpEnabledConfirmMessage" : "최적의 성능을 위해 셰이더 덤핑을 비활성화하는 것이 좋습니다. 지금 셰이더 덤핑을 비활성화하시겠습니까?" ,
"DialogLoadAppGameAlreadyLoadedMessage" : "다른 게임이 이미 로드되었습니다" ,
"DialogLoadAppGameAlreadyLoadedSubMessage" : "다른 게임을 시작하기 전에 에뮬레이션을 중지하거나 에뮬레이터를 닫으십시오." ,
"DialogUpdateAddUpdateErrorMessage" : "파일에 선택한 제목에 대한 업데이트가 포함되어 있지 않습니다!" ,
"DialogSettingsBackendThreadingWarningTitle" : "경고 - 백엔드 스레딩" ,
"DialogSettingsBackendThreadingWarningMessage" : "변경 사항을 완전히 적용하려면 이 옵션을 변경한 후 Ryujinx를 다시 시작해야 합니다. 플랫폼에 따라 Ryujinx를 사용할 때 드라이버 자체의 멀티스레딩을 수동으로 비활성화해야 할 수도 있습니다." ,
"SettingsTabGraphicsFeaturesOptions" : "특징" ,
"SettingsTabGraphicsBackendMultithreading" : "그래픽 백엔드 멀티스레딩 :" ,
"CommonAuto" : "자동적 인" ,
"CommonOff" : "끄다" ,
"CommonOn" : "켜짐" ,
"InputDialogYes" : "네" ,
"InputDialogNo" : "아니" ,
"DialogProfileInvalidProfileNameErrorMessage" : "파일 이름에 잘못된 기호가 있습니다. 다시 시도하십시오." ,
"MenuBarOptionsPauseEmulation" : "정지시키다" ,
"MenuBarOptionsResumeEmulation" : "재개하다" ,
"AboutUrlTooltipMessage" : "기본 브라우저에서 Ryujinx 웹사이트를 열려면 클릭하십시오." ,
"AboutDisclaimerMessage" : "Ryujinx는 Nintendo™와 제휴하지 않으며,\n어떤 식으로든 또는 그 파트너." ,
"AboutAmiiboDisclaimerMessage" : "AmiiboAPI(www.amiiboapi.com) 사용\nAmiibo 에뮬레이션에서." ,
"AboutPatreonUrlTooltipMessage" : "기본 브라우저에서 Ryujinx Patreon 페이지를 열려면 클릭하세요." ,
"AboutGithubUrlTooltipMessage" : "클릭하여 기본 브라우저에서 Ryujinx GitHub 페이지를 엽니다." ,
"AboutDiscordUrlTooltipMessage" : "기본 브라우저에서 Ryujinx Discord 서버 초대를 열려면 클릭하세요." ,
"AboutTwitterUrlTooltipMessage" : "클릭하여 기본 브라우저에서 Ryujinx Twitter 페이지를 엽니다." ,
"AboutRyujinxAboutTitle" : "에 대한 :" ,
"AboutRyujinxAboutContent" : "Ryujinx는 Nintendo Switch™용 에뮬레이터입니다.\nPatreon에서 지원해 주세요.\n모든 최신 뉴스는 Twitter 또는 Discord에서 확인하세요.\n기고에 관심이 있는 개발자는 GitHub 또는 Discord에서 자세한 내용을 확인할 수 있습니다." ,
"AboutRyujinxMaintainersTitle" : "유지 관리 :" ,
"AboutRyujinxMaintainersContentTooltipMessage" : "기본 브라우저에서 기여자 페이지를 열려면 클릭하십시오." ,
"AboutRyujinxSupprtersTitle" : "Patreon에서 지원 :" ,
"AmiiboSeriesLabel" : "Amiibo 시리즈" ,
"AmiiboCharacterLabel" : "성격" ,
"AmiiboScanButtonLabel" : "스캔" ,
"AmiiboOptionsShowAllLabel" : "모든 Amiibo 표시" ,
"AmiiboOptionsUsRandomTagLabel" : "해킹: 임의의 태그 UUID 사용" ,
"DlcManagerTableHeadingEnabledLabel" : "활성화됨" ,
"DlcManagerTableHeadingTitleIdLabel" : "제목 ID" ,
"DlcManagerTableHeadingContainerPathLabel" : "컨테이너 경로" ,
"DlcManagerTableHeadingFullPathLabel" : "전체 경로" ,
"DlcManagerRemoveAllButton" : "모두 제거" ,
"MenuBarOptionsChangeLanguage" : "언어 변경" ,
"CommonSort" : "정렬" ,
"CommonShowNames" : "이름 표시" ,
"CommonFavorite" : "가장 좋아하는" ,
"OrderAscending" : "오름차순" ,
"OrderDescending" : "내림차순" ,
Vulkan backend (#2518)
* WIP Vulkan implementation
* No need to initialize attributes on the SPIR-V backend anymore
* Allow multithreading shaderc and vkCreateShaderModule
You'll only really see the benefit here with threaded-gal or parallel shader cache compile.
Fix shaderc multithreaded changes
Thread safety for shaderc Options constructor
Dunno how they managed to make a constructor not thread safe, but you do you. May avoid some freezes.
* Support multiple levels/layers for blit.
Fixes MK8D when scaled, maybe a few other games. AMD software "safe" blit not supported right now.
* TextureStorage should hold a ref of the foreign storage, otherwise it might be freed while in use
* New depth-stencil blit method for AMD
* Workaround for AMD driver bug
* Fix some tessellation related issues (still doesn't work?)
* Submit command buffer before Texture GetData. (UE4 fix)
* DrawTexture support
* Fix BGRA on OpenGL backend
* Fix rebase build break
* Support format aliasing on SetImage
* Fix uniform buffers being lost when bindings are out of order
* Fix storage buffers being lost when bindings are out of order
(also avoid allocations when changing bindings)
* Use current command buffer for unscaled copy (perf)
Avoids flushing commands and renting a command buffer when fulfilling copy dependencies and when games do unscaled copies.
* Update to .net6
* Update Silk.NET to version 2.10.1
Somehow, massive performance boost. Seems like their vtable for looking up vulkan methods was really slow before.
* Fix PrimitivesGenerated query, disable Transform Feedback queries for now
Lets Splatoon 2 work on nvidia. (mostly)
* Update counter queue to be similar to the OGL one
Fixes softlocks when games had to flush counters.
* Don't throw when ending conditional rendering for now
This should be re-enabled when conditional rendering is enabled on nvidia etc.
* Update findMSB/findLSB to match master's instruction enum
* Fix triangle overlay on SMO, Captain Toad, maybe others?
* Don't make Intel Mesa pay for Intel Windows bugs
* Fix samplers with MinFilter Linear or Nearest (fixes New Super Mario Bros U Deluxe black borders)
* Update Spv.Generator
* Add alpha test emulation on shader (but no shader specialisation yet...)
* Fix R4G4B4A4Unorm texture format permutation
* Validation layers should be enabled for any log level other than None
* Add barriers around vkCmdCopyImage
Write->Read barrier for src image (we want to wait for a write to read it)
Write->Read barrier for dst image (we want to wait for the copy to complete before use)
* Be a bit more careful with texture access flags, since it can be used for anything
* Device local mapping for all buffers
May avoid issues with drivers with NVIDIA on linux/older gpus on windows when using large buffers (?)
Also some performance things and fixes issues with opengl games loading textures weird.
* Cleanup, disable device local buffers for now.
* Add single queue support
Multiqueue seems to be a bit more responsive on NVIDIA. Should fix texture flush on intel. AMD has been forced to single queue for an experiment.
* Fix some validation errors around extended dynamic state
* Remove Intel bug workaround, it was fixed on the latest driver
* Use circular queue for checking consumption on command buffers
Speeds up games that spam command buffers a little. Avoids checking multiple command buffers if multiple are active at once.
* Use SupportBufferUpdater, add single layer flush
* Fix counter queue leak when game decides to use host conditional rendering
* Force device local storage for textures (fixes linux performance)
* Port #3019
* Insert barriers around vkCmdBlitImage (may fix some amd flicker)
* Fix transform feedback on Intel, gl_Position feedback and clears to inexistent depth buffers
* Don't pause transform feedback for multi draw
* Fix draw outside of render pass and missing capability
* Workaround for wrong last attribute on AMD (affects FFVII, STRIKERS1945, probably more)
* Better workaround for AMD vertex buffer size alignment issue
* More instructions + fixes on SPIR-V backend
* Allow custom aspect ratio on Vulkan
* Correct GTK UI status bar positions
* SPIR-V: Functions must always end with a return
* SPIR-V: Fix ImageQuerySizeLod
* SPIR-V: Set DepthReplacing execution mode when FragDepth is modified
* SPIR-V: Implement LoopContinue IR instruction
* SPIR-V: Geometry shader support
* SPIR-V: Use correct binding number on storage buffers array
* Reduce allocations for Spir-v serialization
Passes BinaryWriter instead of the stream to Write and WriteOperand
- Removes creation of BinaryWriter for each instruction
- Removes allocations for literal string
* Some optimizations to Spv.Generator
- Dictionary for lookups of type declarations, constants, extinst
- LiteralInteger internal data format -> ushort
- Deterministic HashCode implementation to avoid spirv result not being the same between runs
- Inline operand list instead of List<T>, falls back to array if many operands. (large performance boost)
TODO: improve instruction allocation, structured program creator, ssa?
* Pool Spv.Generator resources, cache delegates, spv opts
- Pools for Instructions and LiteralIntegers. Can be passed in when creating the generator module.
- NewInstruction is called instead of new Instruction()
- Ryujinx SpirvGenerator passes in some pools that are static. The idea is for these to be shared between threads eventually.
- Estimate code size when creating the output MemoryStream
- LiteralInteger pools using ThreadStatic pools that are initialized before and after creation... not sure of a better way since the way these are created is via implicit cast.
Also, cache delegates for Spv.Generator for functions that are passed around to GenerateBinary etc, since passing the function raw creates a delegate on each call.
TODO: update python spv cs generator to make the coregrammar with NewInstruction and the `params` overloads.
* LocalDefMap for Ssa Rewriter
Rather than allocating a large array of all registers for each block in the shader, allocate one array of all registers and clear it between blocks. Reduces allocations in the shader translator.
* SPIR-V: Transform feedback support
* SPIR-V: Fragment shader interlock support (and image coherency)
* SPIR-V: Add early fragment tests support
* SPIR-V: Implement SwizzleAdd, add missing Triangles ExecutionMode for geometry shaders, remove SamplerType field from TextureMeta
* Don't pass depth clip state right now (fix decals)
Explicitly disabling it is incorrect. OpenGL currently automatically disables based on depth clamp, which is the behaviour if this state is omitted.
* Multisampling support
* Multisampling: Use resolve if src samples count > dst samples count
* Multisampling: We can only resolve for unscaled copies
* SPIR-V: Only add FSI exec mode if used.
* SPIR-V: Use ConstantComposite for Texture Offset Vector
Fixes a bunch of freezes with SPIR-V on AMD hardware, and validation errors. Note: Obviously assumes input offsets are constant, which they currently are.
* SPIR-V: Don't OpReturn if we already OpExit'ed
Fixes spir-v parse failure and stack smashing in RADV (obviously you still need bolist)
* SPIR-V: Only use input attribute type for input attributes
Output vertex attributes should always be of type float.
* Multithreaded Pipeline Compilation
* Address some feedback
* Make this 32
* Update topology with GpuAccessorState
* Cleanup for merge (note: disables spir-v)
* Make more robust to shader compilation failure
- Don't freeze when GLSL compilation fails
- Background SPIR-V pipeline compile failure results in skipped draws, similar to GLSL compilation failure.
* Fix Multisampling
* Only update fragment scale count if a vertex texture needs a scale.
Fixes a performance regression introduced by texture scaling in the vertex stage where support buffer updates would be very frequent, even at 1x, if any textures were used on the vertex stage.
This check doesn't exactly look cheap (a flag in the shader stage would probably be preferred), but it is much cheaper than uploading scales in both vulkan and opengl, so it will do for now.
* Use a bitmap to do granular tracking for buffer uploads.
This path is only taken if the much faster check of "is the buffer rented at all" is triggered, so it doesn't actually end up costing too much, and the time saved by not ending render passes (and on gpu for not waiting on barriers) is probably helpful.
Avoids ending render passes to update buffer data (not all the time)
- 140-180 to 35-45 in SMO metro kingdom (these updates are in the UI)
- Very variable 60-150(!) to 16-25 in mario kart 8 (these updates are in the UI)
As well as allowing more data to be preloaded persistently, this will also allow more data to be loaded in the preload buffer, which should be faster as it doesn't need to insert barriers between draws. (and on tbdr, does not need to flush and reload tile memory)
Improves performance in GPU limited scenarios. Should notably improve performance on TBDR gpus. Still a lot more to do here.
* Copy query results after RP ends, rather than ending to copy
We need to end the render pass to get the data (submit command buffer) anyways...
Reduces render passes created in games that use queries.
* Rework Query stuff a bit to avoid render pass end
Tries to reset returned queries in background when possible, rather than ending the render pass.
Still ends render pass when resetting a counter after draws, but maybe that can be solved too. (by just pulling an empty object off the pool?)
* Remove unnecessary lines
Was for testing
* Fix validation error for query reset
Need to think of a better way to do this.
* SPIR-V: Fix SwizzleAdd and some validation errors
* SPIR-V: Implement attribute indexing and StoreAttribute
* SPIR-V: Fix TextureSize for MS and Buffer sampler types
* Fix relaunch issues
* SPIR-V: Implement LogicalExclusiveOr
* SPIR-V: Constant buffer indexing support
* Ignore unsupported attributes rather than throwing (matches current GLSL behaviour)
* SPIR-V: Implement tessellation support
* SPIR-V: Geometry shader passthrough support
* SPIR-V: Implement StoreShader8/16 and StoreStorage8/16
* SPIR-V: Resolution scale support and fix TextureSample multisample with LOD bug
* SPIR-V: Fix field index for scale count
* SPIR-V: Fix another case of wrong field index
* SPIRV/GLSL: More scaling related fixes
* SPIR-V: Fix ImageLoad CompositeExtract component type
* SPIR-V: Workaround for Intel FrontFacing bug
* Enable SPIR-V backend by default
* Allow null samplers (samplers are not required when only using texelFetch to access the texture)
* Fix some validation errors related to texel block view usage flag and invalid image barrier base level
* Use explicit subgroup size if we can (might fix some block flickering on AMD)
* Take componentMask and scissor into account when clearing framebuffer attachments
* Add missing barriers around CmdFillBuffer (fixes Monster Hunter Rise flickering on NVIDIA)
* Use ClampToEdge for Clamp sampler address mode on Vulkan (fixes Hollow Knight)
Clamp is unsupported on Vulkan, but ClampToEdge behaves almost the same. ClampToBorder on the other hand (which was being used before) is pretty different
* Shader specialization for new Vulkan required state (fixes remaining alpha test issues, vertex stretching on AMD on Crash Bandicoot, etc)
* Check if the subgroup size is supported before passing a explicit size
* Only enable ShaderFloat64 if the GPU supports it
* We don't need to recompile shaders if alpha test state changed but alpha test is disabled
* Enable shader cache on Vulkan and implement MultiplyHighS32/U32 on SPIR-V (missed those before)
* Fix pipeline state saving before it is updated.
This should fix a few warnings and potential stutters due to bad pipeline states being saved in the cache. You may need to clear your guest cache.
* Allow null samplers on OpenGL backend
* _unit0Sampler should be set only for binding 0
* Remove unused PipelineConverter format variable (was causing IOR)
* Raise textures limit to 64 on Vulkan
* No need to pack the shader binaries if shader cache is disabled
* Fix backbuffer not being cleared and scissor not being re-enabled on OpenGL
* Do not clear unbound framebuffer color attachments
* Geometry shader passthrough emulation
* Consolidate UpdateDepthMode and GetDepthMode implementation
* Fix A1B5G5R5 texture format and support R4G4 on Vulkan
* Add barrier before use of some modified images
* Report 32 bit query result on AMD windows (smo issue)
* Add texture recompression support (disabled for now)
It recompresses ASTC textures into BC7, which might reduce VRAM usage significantly on games that uses ASTC textures
* Do not report R4G4 format as supported on Vulkan
It was causing mario head to become white on Super Mario 64 (???)
* Improvements to -1 to 1 depth mode.
- Transformation is only applied on the last stage in the vertex pipeline.
- Should fix some issues with geometry and tessellation (hopefully)
- Reading back FragCoord Z on fragment will transform back to -1 to 1.
* Geometry Shader index count from ThreadsPerInputPrimitive
Generally fixes SPIR-V emitting too many triangles, may change games in OpenGL
* Remove gl_FragDepth scaling
This is always 0-1; the other two issues were causing the problems. Fixes regression with Xenoblade.
* Add Gl StencilOp enum values to Vulkan
* Update guest cache to v1.1 (due to specialization state changes)
This will explode your shader cache from earlier vulkan build, but it must be done. :pensive:
* Vulkan/SPIR-V support for viewport inverse
* Fix typo
* Don't create query pools for unsupported query types
* Return of the Vector Indexing Bug
One day, everyone will get this right.
* Check for transform feedback query support
Sometimes transform feedback is supported without the query type.
* Fix gl_FragCoord.z transformation
FragCoord.z is always in 0-1, even when the real depth range is -1 to 1. Turns out the only bug was geo and tess stage outputs.
Fixes Pokemon Sword/Shield, possibly others.
* Fix Avalonia Rebase
Vulkan is currently not available on Avalonia, but the build does work and you can use opengl.
* Fix headless build
* Add support for BC6 and BC7 decompression, decompress all BC formats if they are not supported by the host
* Fix BCn 4/5 conversion, GetTextureTarget
BCn 4/5 could generate invalid data when a line's size in bytes was not divisible by 4, which both backends expect.
GetTextureTarget was not creating a view with the replacement format.
* Fix dependency
* Fix inverse viewport transform vector type on SPIR-V
* Do not require null descriptors support
* If MultiViewport is not supported, do not try to set more than one viewport/scissor
* Bounds check on bitmap add.
* Flush queries on attachment change rather than program change
Occlusion queries are usually used in a depth only pass so the attachments changing is a better indication of the query block ending.
Write mask changes are also considered since some games do depth only pass by setting 0 write mask on all the colour targets.
* Add support for avalonia (#6)
* add avalonia support
* only lock around skia flush
* addressed review
* cleanup
* add fallback size if avalonia attempts to render but the window size is 0. read desktop scale after enabling dpi check
* fix getting window handle on linux. skip render is size is 0
* Combine non-buffer with buffer image descriptor sets
* Support multisample texture copy with automatic resolve on Vulkan
* Remove old CompileShader methods from the Vulkan backend
* Add minimal pipeline layouts that only contains used bindings
They are used by helper shaders, the intention is avoiding needing to recompile the shaders (from GLSL to SPIR-V) if the bindings changes on the translated guest shaders
* Pre-compile helper shader as SPIR-V, and some fixes
* Remove pre-compiled shaderc binary for Windows as its no longer needed by default
* Workaround RADV crash
Enabling the descriptor indexing extension, even if it is not used, forces the radv driver to use "bolist".
* Use RobustBufferAccess on NVIDIA gpus
Avoids the SMO waterfall triangle on older NVIDIA gpus.
* Implement GPU selector and expose texture recompression on the UI and config
* Fix and enable background compute shader compilation
Also disables warnings from shader cache pipeline misses.
* Fix error due to missing subpass dependency when Attachment Write -> Shader Read barriers are added
* If S8D24 is not supported, use D32FS8
* Ensure all fences are destroyed on dispose
* Pre-allocate arrays up front on DescriptorSetUpdater, allows the removal of some checks
* Add missing clear layer parameter after rebase
* Use selected gpu from config for avalonia (#7)
* use configured device
* address review
* Fix D32S8 copy workaround (AMD)
Fixes water in Pokemon Legends Arceus on AMD GPUs. Possibly fixes other things.
* Use push descriptors for uniform buffer updates (disabled for now)
* Push descriptor support check, buffer redundancy checks
Should make push descriptors faster, needs more testing though.
* Increase light command buffer pool to 2 command buffers, throw rather than returning invalid cbs
* Adjust bindings array sizes
* Force submit command buffers if memory in use by its resources is high
* Add workaround for AMD GCN cubemap view sins
`ImageCreateCubeCompatibleBit` seems to generally break 2D array textures with mipmaps... even if they are eventually aliased as a cubemap with mipmaps. Forcing a copy here works around the issue.
This could be used in future if enabling this bit reduces performance on certain GPUs. (mobile class is generally a worry)
Currently also enabled on Linux as I don't know if they managed to dodge this bug (someone please tell me). Not enabled on Vega at the moment, but easy to add if the issue is there.
* Add mobile, non-RX variants to the GCN regex.
Also make sure that the 3 digit ones only include numbers starting with 7 or 8.
* Increase image limit per stage from 8 to 16
Xenoblade Chronicles 2 was hiting the limit of 8
* Minor code cleanup
* Fix NRE caused by SupportBufferUpdater calling pipeline ClearBuffer
* Add gpu selector to Avalonia (#8)
* Add gpu selector to avalonia settings
* show backend label on window
* some fixes
* address review
* Minor changes to the Avalonia UI
* Update graphics window UI and locales. (#9)
* Update xaml and update locales
* locale updates
Did my best here but likely needs to be checked by native speakers, especially the use of ampersands in greek, russian and turkish?
* Fix locales with more (?) correct translations.
* add separator to render widget
* fix spanish and portuguese
* Add new IdList, replaces buffer list that could not remove elements and had unbounded growth
* Don't crash the settings window if Vulkan is not supported
* Fix Actions menu not being clickable on GTK UI after relaunch
* Rename VulkanGraphicsDevice to VulkanRenderer and Renderer to OpenGLRenderer
* Fix IdList and make it not thread safe
* Revert useless OpenGL format table changes
* Fix headless project build
* List throws ArgumentOutOfRangeException
* SPIR-V: Fix tessellation
* Increase shader cache version due to tessellation fix
* Reduce number of Sync objects created (improves perf in some specific titles)
* Fix vulkan validation errors for NPOT compressed upload and GCN workaround.
* Add timestamp to the shader cache and force rebuild if host cache is outdated
* Prefer Mail box present mode for popups (#11)
* Prefer Mail box present mode
* fix debug
* switch present mode when vsync is toggled
* only disable vsync on the main window
* SPIR-V: Fix geometry shader input load with transform feedback
* BC7 Encoder: Prefer more precision on alpha rather than RGB when alpha is 0
* Fix Avalonia build
* Address initial PR feedback
* Only set transform feedback outputs on last vertex stage
* Address riperiperi PR feedback
* Remove outdated comment
* Remove unused constructor
* Only throw for negative results
* Throw for QueueSubmit and other errors
No point in delaying the inevitable
* Transform feedback decorations inside gl_PerVertex struct breaks the NVIDIA compiler
* Fix some resolution scale issues
* No need for two UpdateScale calls
* Fix comments on SPIR-V generator project
* Try to fix shader local memory size
On DOOM, a shader is using local memory, but both Low and High size are 0, CRS size is 1536, it seems to store on that region?
* Remove RectangleF that is now unused
* Fix ImageGather with multiple offsets
Needs ImageGatherExtended capability, and must use `ConstantComposite` instead of `CompositeConstruct`
* Address PR feedback from jD in all projects except Avalonia
* Address most of jD PR feedback on Avalonia
* Remove unsafe
* Fix VulkanSkiaGpu
* move present mode request out of Create Swapchain method
* split more parts of create swapchain
* addressed reviews
* addressed review
* Address second batch of jD PR feedback
* Fix buffer <-> image copy row length and height alignment
AlignUp helper does not support NPOT alignment, and ASTC textures can have NPOT block sizes
* Better fix for NPOT alignment issue
* Use switch expressions on Vulkan EnumConversion
Thanks jD
* Fix Avalonia build
* Add Vulkan selection prompt on startup
* Grammar fixes on Vulkan prompt message
* Add missing Vulkan migration flag
Co-authored-by: riperiperi <rhy3756547@hotmail.com>
Co-authored-by: Emmanuel Hansen <emmausssss@gmail.com>
Co-authored-by: MutantAura <44103205+MutantAura@users.noreply.github.com>
2022-07-31 17:26:06 -04:00
"SettingsTabGraphicsFeatures" : "특징ㆍ개선 사항" ,
2022-05-15 07:30:15 -04:00
"ErrorWindowTitle" : "오류 창" ,
"ToggleDiscordTooltip" : "Discord Rich Presence 활성화 또는 비활성화" ,
"AddGameDirBoxTooltip" : "게임 디렉토리를 입력하여 목록에 추가하세요" ,
"AddGameDirTooltip" : "목록에 게임 디렉토리 추가" ,
"RemoveGameDirTooltip" : "선택한 게임 디렉토리 제거" ,
"CustomThemeCheckTooltip" : "GUI에서 사용자 정의 테마 활성화 또는 비활성화" ,
"CustomThemePathTooltip" : "사용자 지정 GUI 테마 경로" ,
"CustomThemeBrowseTooltip" : "사용자 정의 GUI 테마 찾기" ,
"DockModeToggleTooltip" : "도킹 모드 활성화 또는 비활성화" ,
"DirectKeyboardTooltip" : "\"직접 키보드 액세스(HID) 지원\" 활성화 또는 비활성화(텍스트 입력 장치로 키보드에 대한 게임 액세스 제공)" ,
"DirectMouseTooltip" : "\"직접 마우스 액세스(HID) 지원\" 활성화 또는 비활성화(포인팅 장치로 마우스에 대한 게임 액세스 제공)" ,
"RegionTooltip" : "시스템 지역 변경" ,
"LanguageTooltip" : "시스템 언어 변경" ,
"TimezoneTooltip" : "시스템 시간대 변경" ,
"TimeTooltip" : "시스템 시간 변경" ,
"VSyncToggleTooltip" : "수직 동기화 활성화 또는 비활성화" ,
"PptcToggleTooltip" : "PPTC 활성화 또는 비활성화" ,
"FsIntegrityToggleTooltip" : "게임 콘텐츠 파일에 대한 무결성 검사 활성화" ,
"AudioBackendTooltip" : "오디오 백엔드 변경" ,
"MemoryManagerTooltip" : "게스트 메모리가 매핑되고 액세스되는 방식을 변경합니다. 에뮬레이트된 CPU 성능에 큰 영향을 줍니다." ,
"MemoryManagerSoftwareTooltip" : "주소 변환을 위해 소프트웨어 페이지 테이블을 사용하십시오. 정확도는 가장 높지만 성능은 가장 느립니다." ,
"MemoryManagerHostTooltip" : "호스트 주소 공간에서 메모리를 직접 매핑합니다. 훨씬 더 빠른 JIT 컴파일 및 실행." ,
"MemoryManagerUnsafeTooltip" : "메모리를 직접 매핑하지만 액세스하기 전에 게스트 주소 공간 내의 주소를 마스킹하지 마십시오. 더 빠르지만 안전을 희생해야 합니다. 게스트 응용 프로그램은 Ryujinx의 어디에서나 메모리에 액세스할 수 있으므로 이 모드로 신뢰할 수 있는 프로그램만 실행하십시오." ,
2022-11-16 17:27:42 -05:00
"DRamTooltip" : "에뮬레이트된 시스템의 메모리 양을 4GiB에서 6GiB로 확장" ,
2022-05-15 07:30:15 -04:00
"IgnoreMissingServicesTooltip" : "누락된 서비스 무시 옵션 활성화 또는 비활성화" ,
"GraphicsBackendThreadingTooltip" : "그래픽 백엔드 멀티스레딩 활성화" ,
"GalThreadingTooltip" : "두 번째 스레드에서 그래픽 백엔드 명령을 실행합니다. 셰이더 컴파일의 런타임 멀티스레딩을 허용하고, 말더듬을 줄이고, 자체 멀티스레딩 지원 없이 드라이버의 성능을 개선합니다. 멀티스레딩이 있는 드라이버에서 약간 다른 최대 성능. 드라이버 내장 멀티스레딩을 올바르게 비활성화하려면 Ryujinx를 다시 시작해야 할 수도 있고 최상의 성능을 얻으려면 수동으로 수행해야 할 수도 있습니다." ,
"ShaderCacheToggleTooltip" : "셰이더 캐시 활성화 또는 비활성화" ,
"ResolutionScaleTooltip" : "적용 가능한 렌더 타겟에 적용된 해상도 배율" ,
"ResolutionScaleEntryTooltip" : "1.5와 같은 부동 소수점 해상도 스케일. 비적분 스케일은 문제나 충돌을 일으킬 가능성이 더 큽니다." ,
"AnisotropyTooltip" : "이방성 필터링 수준(게임에서 요청한 값을 사용하려면 자동으로 설정)" ,
"AspectRatioTooltip" : "렌더러 창에 적용된 종횡비." ,
"ShaderDumpPathTooltip" : "그래픽 셰이더 덤프 경로" ,
"FileLogTooltip" : "디스크의 파일에 대한 로깅 활성화 또는 비활성화" ,
"StubLogTooltip" : "스텁 로그 메시지 인쇄 활성화" ,
"InfoLogTooltip" : "정보 로그 메시지 인쇄 활성화" ,
"WarnLogTooltip" : "경고 로그 메시지 인쇄 활성화" ,
"ErrorLogTooltip" : "오류 로그 메시지 인쇄 활성화" ,
"GuestLogTooltip" : "게스트 로그 메시지 인쇄 활성화" ,
"FileAccessLogTooltip" : "파일 액세스 로그 메시지 인쇄 활성화" ,
"FSAccessLogModeTooltip" : "콘솔에 대한 FS 액세스 로그 출력을 활성화합니다. 가능한 모드는 0-3입니다" ,
"DeveloperOptionTooltip" : "주의해서 사용" ,
"OpenGlLogLevel" : "적절한 로그 수준이 활성화되어 있어야 합니다" ,
"DebugLogTooltip" : "디버그 로그 메시지 인쇄 활성화" ,
"LoadApplicationFileTooltip" : "로드할 Switch 호환 파일을 선택하려면 파일 선택기를 엽니다." ,
"LoadApplicationFolderTooltip" : "파일 선택기를 열어 로드할 Switch 호환 가능하고 압축을 푼 응용 프로그램을 선택합니다" ,
"OpenRyujinxFolderTooltip" : "Ryujinx 파일 시스템 폴더 열기" ,
"OpenRyujinxLogsTooltip" : "로그가 기록되는 폴더를 엽니다." ,
"ExitTooltip" : "Ryujinx 종료" ,
"OpenSettingsTooltip" : "설정 창 열기" ,
"OpenProfileManagerTooltip" : "사용자 프로필 관리자 창 열기" ,
"StopEmulationTooltip" : "현재 게임의 에뮬레이션을 중지하고 게임 선택으로 돌아가기" ,
"CheckUpdatesTooltip" : "Ryujinx 업데이트 확인" ,
"OpenAboutTooltip" : "정보 창 열기" ,
"GridSize" : "그리드 크기" ,
"GridSizeTooltip" : "그리드 항목의 크기 변경" ,
"SettingsTabSystemSystemLanguageBrazilianPortuguese" : "포르투갈어(브라질)" ,
"AboutRyujinxContributorsButtonHeader" : "모든 기여자 보기" ,
"SettingsTabSystemAudioVolume" : "용량 : " ,
"AudioVolumeTooltip" : "오디오 볼륨 변경" ,
"SettingsTabSystemEnableInternetAccess" : "게스트 인터넷 액세스 활성화s" ,
"EnableInternetAccessTooltip" : "게스트 인터넷 액세스를 활성화합니다. 활성화된 경우 응용 프로그램은 에뮬레이트된 스위치 콘솔이 인터넷에 연결된 것처럼 작동합니다. 경우에 따라 이 옵션이 비활성화된 경우에도 응용 프로그램이 인터넷에 계속 액세스할 수 있습니다" ,
"GameListContextMenuManageCheatToolTip" : "치트 관리" ,
"GameListContextMenuManageCheat" : "치트 관리" ,
2022-07-05 14:06:31 -04:00
"ControllerSettingsStickRange" : "범위:" ,
2022-05-15 07:30:15 -04:00
"DialogStopEmulationTitle" : "Ryujinx - 에뮬레이션 중지" ,
"DialogStopEmulationMessage" : "에뮬레이션을 중지하시겠습니까?" ,
"SettingsTabCpu" : "CPU" ,
"SettingsTabAudio" : "오디오" ,
"SettingsTabNetwork" : "회로망" ,
"SettingsTabNetworkConnection" : "네트워크 연결" ,
"SettingsTabCpuCache" : "CPU 캐시" ,
2022-07-05 14:06:31 -04:00
"SettingsTabCpuMemory" : "CPU 메모리" ,
"ControllerMotionTitle" : "Motion Control Settings" ,
"ControllerRumbleTitle" : "Rumble Settings"
2022-05-15 07:30:15 -04:00
}