OpenGL 및 Vulkan을 μœ„ν•œ μƒˆλ‘œμš΄ 엔진이 ν¬ν•¨λœ GTK 4.14 κ·Έλž˜ν”½ νˆ΄ν‚·μ„ μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

4.14.0κ°œμ›” κ°„μ˜ 개발 끝에 κ·Έλž˜ν”½ μ‚¬μš©μž μΈν„°νŽ˜μ΄μŠ€ 생성을 μœ„ν•œ 닀쀑 ν”Œλž«νΌ νˆ΄ν‚·μΈ GTK 4이 μΆœμ‹œλ˜μ—ˆμŠ΅λ‹ˆλ‹€. GTK XNUMXλŠ” λ‹€μŒ GTK의 API λ³€κ²½μœΌλ‘œ 인해 XNUMXκ°œμ›”λ§ˆλ‹€ μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ„ λ‹€μ‹œ μž‘μ„±ν•΄μ•Ό ν•˜λŠ” κ±±μ • 없이 μ‚¬μš©ν•  수 μžˆλŠ” μ•ˆμ •μ μ΄κ³  μ§€μ›λ˜λŠ” APIλ₯Ό μ• ν”Œλ¦¬μΌ€μ΄μ…˜ κ°œλ°œμžμ—κ²Œ μˆ˜λ…„ λ™μ•ˆ μ œκ³΅ν•˜λ €λŠ” μƒˆλ‘œμš΄ 개발 ν”„λ‘œμ„ΈμŠ€μ˜ μΌλΆ€λ‘œ 개발되고 μžˆμŠ΅λ‹ˆλ‹€. λ‚˜λ­‡κ°€μ§€.

μ•žμœΌλ‘œ GTK4.90의 ν–₯ν›„ 릴리슀λ₯Ό μœ„ν•œ κΈ°λŠ₯을 κ°œλ°œν•  μ‹€ν—˜μ μΈ 브랜치 5을 ꡬ성할 κ³„νšμž…λ‹ˆλ‹€. GTK5 λΈŒλžœμΉ˜μ—λŠ” API μˆ˜μ€€μ˜ ν˜Έν™˜μ„±μ„ μœ„λ°˜ν•˜λŠ” λ³€κ²½ 사항이 ν¬ν•¨λ©λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄ 이전 파일 선택 λŒ€ν™” μƒμžμ™€ 같은 일뢀 μœ„μ ―μ˜ 지원 쀑단과 κ΄€λ ¨λ©λ‹ˆλ‹€. GTK5 λΈŒλžœμΉ˜μ—μ„œ X11 ν”„λ‘œν† μ½œμ— λŒ€ν•œ 지원을 μ’…λ£Œν•˜κ³  Wayland ν”„λ‘œν† μ½œμ„ ν†΅ν•΄μ„œλ§Œ μž‘λ™ν•˜λŠ” κΈ°λŠ₯을 λ– λ‚  κ°€λŠ₯성도 λ…Όμ˜λ˜κ³  μžˆμŠ΅λ‹ˆλ‹€.

GTK 4.14의 κ°€μž₯ μ£Όλͺ©ν• λ§Œν•œ κ°œμ„  사항은 λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€.

  • μ—¬κΈ°μ—λŠ” OpenGL(GL 3.3+ 및 GLES 3.0+) 및 Vulkan κ·Έλž˜ν”½ APIλ₯Ό μ‚¬μš©ν•˜λŠ” μƒˆλ‘œμš΄ 톡합 λ Œλ”λ§ μ—”μ§„ "ngl" 및 "vulkan"이 ν¬ν•¨λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€. 두 μ—”μ§„ λͺ¨λ‘ Vulkan APIλ₯Ό 기반으둜 ν•˜μ§€λ§Œ "ngl" μ—”μ§„μ—λŠ” OpenGLκ³Ό Vulkan의 차이점을 κ³ λ €ν•˜μ—¬ Vulkan μœ„μ—μ„œ μ‹€ν–‰λ˜λŠ” OpenGL에 λŒ€ν•œ λ³„λ„μ˜ 좔상화 계측이 μžˆμŠ΅λ‹ˆλ‹€. 이 μ ‘κ·Ό 방식을 톡해 μž₯λ©΄ κ·Έλž˜ν”„, λ³€ν™˜, ν…μŠ€μ²˜ 캐싱 및 문자 λͺ¨μ–‘ 처리λ₯Ό μœ„ν•΄ 두 μ—”μ§„ λͺ¨λ‘μ—μ„œ 곡톡 인프라λ₯Ό μ‚¬μš©ν•  수 μžˆμ—ˆμŠ΅λ‹ˆλ‹€. λ˜ν•œ 톡합을 톡해 두 μ—”μ§„μ˜ μ½”λ“œ 베이슀 μœ μ§€ 관리가 크게 λ‹¨μˆœν™”λ˜μ—ˆμœΌλ©° μ΅œμ‹  μƒνƒœλ‘œ λ™κΈ°ν™”λ˜μ—ˆμŠ΅λ‹ˆλ‹€.

    각 μœ ν˜•μ˜ λ Œλ” λ…Έλ“œμ— λŒ€ν•΄ λ³„λ„μ˜ λ‹¨μˆœ 셰이더λ₯Ό μ‚¬μš©ν•˜κ³  μ˜€ν”„μŠ€ν¬λ¦° λ Œλ”λ§ 쀑에 주기적으둜 데이터λ₯Ό λ‹€μ‹œ μ •λ ¬ν–ˆλ˜ 이전 gl μ—”μ§„κ³Ό 달리 μƒˆλ‘œμš΄ 엔진은 μ˜€ν”„μŠ€ν¬λ¦° λ Œλ”λ§ λŒ€μ‹  λ²„νΌμ˜ 데이터λ₯Ό ν•΄μ„ν•˜λŠ” λ³΅μž‘ν•œ 셰이더(ubershader)λ₯Ό μ‚¬μš©ν•©λ‹ˆλ‹€. . μƒˆ μ—”μ§„μ˜ λ…νŠΉν•œ κΈ°λŠ₯ μ€‘μ—λŠ” 윀곽 ν‰ν™œν™”(μ„Έλ°€ν•œ μ„ΈλΆ€ 사항을 μœ μ§€ν•˜κ³  더 λΆ€λ“œλŸ¬μš΄ μœ€κ³½μ„ 그릴 수 있음), μž„μ˜ κ·ΈλΌλ””μ–ΈνŠΈ ν˜•μ„±(μž„μ˜μ˜ 색상 및 앀티앨리어싱 μ‚¬μš© κ°€λŠ₯) 및 λΆ„μˆ˜ 크기 쑰정이 μ–ΈκΈ‰λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€.

  • μƒˆλ‘œμš΄ "ngl" λ Œλ”λ§ 엔진은 기본적으둜 ν™œμ„±ν™”λ˜λ©° Vulkan κ·Έλž˜ν”½ API에 λŒ€ν•œ 지원도 기본적으둜 ν™œμ„±ν™”λ©λ‹ˆλ‹€. 이제 κΈ°λ³Έ κ΅¬μ„±μœΌλ‘œ λΉŒλ“œν•  λ•Œ Vulkan 1.3 지원이 ν•„μš”ν•©λ‹ˆλ‹€.
  • OpenGL 및 Vulkan을 톡해 κ·Έλž˜ν”½ μž₯면을 λ Œλ”λ§ν•˜λŠ” κΈ°λŠ₯을 μ œκ³΅ν•˜λŠ” GSK 라이브러리(GTK Scene Kit)λŠ” κΈ€κΌ΄ λ Œλ”λ§, 힌트, ν…μŠ€νŠΈ ν‘œμ‹œ μ‹œ μ •μˆ˜κ°€ μ•„λ‹Œ μŠ€μΌ€μΌ κ°’ μ‚¬μš©κ³Ό κ΄€λ ¨ν•˜μ—¬ 크게 κ°œμ„ λ˜μ—ˆμŠ΅λ‹ˆλ‹€. 힌트λ₯Ό 쀄 λ•Œ(저해상도 ν™”λ©΄μ—μ„œ λͺ…확성을 높이기 μœ„ν•΄ λž˜μŠ€ν„°ν™” 쀑에 문자 λͺ¨μ–‘ μœ€κ³½μ„ μ„ λΆ€λ“œλŸ½κ²Œ 함) 문자 λͺ¨μ–‘μ˜ ν•˜μœ„ ν”½μ…€ μœ„μΉ˜ 지정이 κ΅¬ν˜„λ©λ‹ˆλ‹€. μ •μˆ˜κ°€ μ•„λ‹Œ μŠ€μΌ€μΌ κ°’(예: 125%)μ—μ„œ κΈ€κΌ΄ λ Œλ”λ§ ν’ˆμ§ˆμ΄ ν–₯μƒλ˜μ—ˆμŠ΅λ‹ˆλ‹€. 글리프 및 ν…μŠ€μ²˜μ— λŒ€ν•œ μΊμ‹œμ—μ„œ μš”μ†Œ μ œκ±°μ— λŒ€ν•œ 지원을 κ΅¬ν˜„ν–ˆμŠ΅λ‹ˆλ‹€. 글리프 μΊμ‹±μ˜ νš¨μœ¨μ„±μ΄ ν–₯μƒλ˜μ—ˆμŠ΅λ‹ˆλ‹€.
  • Cairo 라이브러리 μ‚¬μš©μ—μ„œ λ²—μ–΄λ‚˜ GPU λ Œλ”λ§μ„ μ„ ν˜Έν•˜λŠ” μ›€μ§μž„μ˜ μΌν™˜μœΌλ‘œ 일련의 μ„ μ΄λ‚˜ 3μ°¨ 및 2μ°¨ λ² μ§€μ–΄ 곑선을 μ‚¬μš©ν•˜μ—¬ λͺ¨μ–‘κ³Ό μ˜μ—­μ„ κ·Έλ¦¬λŠ” 데 "경둜"에 λŒ€ν•œ 지원이 μΆ”κ°€λ˜μ—ˆμŠ΅λ‹ˆλ‹€. 경둜λ₯Ό μ‚¬μš©ν•˜μ—¬ κ·Έλ¦¬κΈ°μ—λŠ” μ„ μ΄λ‚˜ κ³‘μ„ μ˜ λ§€κ°œλ³€μˆ˜λ₯Ό μ •μ˜ν•˜λŠ” GskPath 객체뿐만 μ•„λ‹ˆλΌ 곑선을 μƒμ„±ν•˜κΈ° μœ„ν•œ GskPathBuilder 객체, λͺ¨μ–‘μ˜ 점을 μ •μ˜ν•˜κΈ° μœ„ν•œ GskPathPoint, 경둜 길이와 같은 츑정을 μœ„ν•œ GskPathMeasureκ°€ μžˆμŠ΅λ‹ˆλ‹€.
    OpenGL 및 Vulkan을 μœ„ν•œ μƒˆλ‘œμš΄ 엔진이 ν¬ν•¨λœ GTK 4.14 κ·Έλž˜ν”½ νˆ΄ν‚·μ„ μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
  • GTK와 κ·Έλž˜ν”½ ν•˜μœ„ μ‹œμŠ€ν…œ 사이에 λ ˆμ΄μ–΄λ₯Ό μ œκ³΅ν•˜λŠ” GDK λΌμ΄λΈŒλŸ¬λ¦¬λŠ” DMA-BUF λ©”μ»€λ‹ˆμ¦˜μ— λŒ€ν•œ 지원을 ν™•μž₯ν–ˆμŠ΅λ‹ˆλ‹€. 이λ₯Ό 톡해 μ„€λͺ…μžλ₯Ό μ‚¬μš©ν•˜μ—¬ μ£Όμ†Œκ°€ μ§€μ •λœ 컀널 μˆ˜μ€€ 버퍼λ₯Ό μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€. μ„€λͺ…μžλ₯Ό 톡해 컀널 ν•˜μœ„ μ‹œμŠ€ν…œ 간에 μ „μ†‘ν•©λ‹ˆλ‹€. GTK의 λ§₯λ½μ—μ„œ DMA-BUFλŠ” ν•©μ„± 쀑 및 λΉ„λ””μ˜€ μž‘μ—… μ‹œ ν”½μ…€ 데이터 볡사λ₯Ό μ΅œμ†Œν™”ν•˜λŠ” 데 μ‚¬μš©λ  수 μžˆμŠ΅λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄ λΉ„λ””μ˜€λŠ” dmabuf의 ν•˜λ“œμ›¨μ–΄ λ””μ½”λ”λ‘œ κΈ°λ‘ν•œ λ‹€μŒ Wayland ν‘œλ©΄μ— μ—°κ²°λ˜μ–΄ UI용 ν•©μ„± κ΄€λ¦¬μžλ₯Ό μ‚¬μš©ν•˜μ—¬ λΆˆν•„μš”ν•œ 데이터 볡사 μž‘μ—… 없이 합성을 화면에 좜λ ₯ν•©λ‹ˆλ‹€.

    GtkGraphicsOffload μœ„μ ―μ„ μΆ”κ°€ν•˜μ—¬ λΉ„λ””μ˜€ λ“±μ˜ μ½˜ν…μΈ λ₯Ό 볡합 κ΄€λ¦¬μžμ— 직접 μ „μ†‘ν•˜κ³ (GSK λ Œλ”λ§ 우회), GdkDmabufTextureBuilder 클래슀λ₯Ό μΆ”κ°€ν•˜μ—¬ dmabufμ—μ„œ GdkTexture 객체λ₯Ό μƒμ„±ν•˜μ—¬ 직접 μ „μ†‘μš© μ½˜ν…μΈ λ₯Ό μƒμ„±ν•©λ‹ˆλ‹€. Pipewire, video4linux λ˜λŠ” gstreamerλ₯Ό dmabuf의 μ†ŒμŠ€λ‘œ μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€. dmabuf NV16, NV61, NV24, NV42 및 YUV ν˜•μ‹μ΄ μ§€μ›λ©λ‹ˆλ‹€.

  • 인쇄 λŒ€ν™”μƒμžλ₯Ό μƒμ„±ν•˜κ³  GtkPrintOperation λŒ€μ‹  μ‚¬μš©ν•  비동기 APIλ₯Ό μ œκ³΅ν•˜λ„λ‘ μ„€κ³„λœ GtkPrintDialog 클래슀λ₯Ό μΆ”κ°€ν–ˆμŠ΅λ‹ˆλ‹€.
  • GtkEmojiChooser μœ„μ ―μ€ Emoji 데이터λ₯Ό μ—…λ°μ΄νŠΈν•˜κ³  λ‹€μ–‘ν•œ 지역을 κ³ λ €ν•˜μ—¬ λ‹€μ–‘ν•œ μ–Έμ–΄λ‘œ κ²€μƒ‰ν•˜λŠ” κΈ°λŠ₯을 μΆ”κ°€ν–ˆμŠ΅λ‹ˆλ‹€.
  • GtkEntry μœ„μ ―μ€ μ‹€ν–‰ μ·¨μ†Œ μž‘μ—…μ„ κ΅¬ν˜„ν•˜κΈ° μœ„ν•΄ μ‚¬μš©μžκ°€ λ³€κ²½ν•œ λ‚΄μš©μ„ μΆ”μ ν•˜λŠ” κΈ°λŠ₯이 ν–₯μƒλ˜μ—ˆμŠ΅λ‹ˆλ‹€.
  • GtkFileChooser μœ„μ ―μ—μ„œ 파일 선택 λŒ€ν™”μƒμž μ—΄κΈ°κ°€ κ°€μ†ν™”λ˜μ—ˆμŠ΅λ‹ˆλ‹€.
  • ν‚€λ³΄λ“œ 단좕킀와 ν™”λ©΄ μ œμŠ€μ²˜μ— λŒ€ν•œ νˆ΄νŒμ„ ν‘œμ‹œν•˜λŠ” GtkShortcutsWindow ν΄λž˜μŠ€λŠ” μž‘μ€ 화면에 맞게 μ‘°μ •λ˜μ—ˆμŠ΅λ‹ˆλ‹€.
  • 검사 λͺ¨λ“œ(GTK 검사기)λŠ” OpenGL, μ§€ν•˜ 및 FPS에 λŒ€ν•œ 정보 ν‘œμ‹œλ₯Ό μ œκ³΅ν•©λ‹ˆλ‹€.
  • gtk4-rendernode-tool μœ ν‹Έλ¦¬ν‹°μ— "비ꡐ" λͺ…령이 μΆ”κ°€λ˜μ—ˆμŠ΅λ‹ˆλ‹€.
  • 경둜 μž‘μ—…μ„ μœ„ν•΄ μƒˆλ‘œμš΄ μœ ν‹Έλ¦¬ν‹°μΈ gtk4-path-tool이 μ œμ•ˆλ˜μ—ˆμŠ΅λ‹ˆλ‹€.
  • gtk4-node-editor μœ ν‹Έλ¦¬ν‹°μ— μžλ™ λ…ΉμŒ 지원이 μΆ”κ°€λ˜μ—ˆμŠ΅λ‹ˆλ‹€.
  • GNOME Shell 기반이 μ•„λ‹Œ ν™˜κ²½μ—μ„œ Waylandλ₯Ό μ‚¬μš©ν•  λ•Œ λ°œμƒν•˜λŠ” μΆ©λŒμ„ μˆ˜μ •ν–ˆμŠ΅λ‹ˆλ‹€.
  • λ³΅μž‘ν•œ ν˜•μ‹μ˜ ν…μŠ€νŠΈ ν‘œμ‹œ, WebKitGTK μž‘λ™ 및 μ•Œλ¦Ό ν‘œμ‹œμ™€ κ΄€λ ¨λœ μž₯애인을 μœ„ν•œ μƒˆλ‘œμš΄ κΈ°λŠ₯이 μΆ”κ°€λ˜μ—ˆμŠ΅λ‹ˆλ‹€. ARIA 사양에 λŒ€ν•œ 지원이 ν–₯μƒλ˜μ—ˆμŠ΅λ‹ˆλ‹€. 타사 ν…μŠ€νŠΈ μœ„μ ―μ—μ„œ μ ‘κ·Όμ„± κΈ°λŠ₯을 μ‚¬μš©ν•˜κΈ° μœ„ν•œ GtkAccessibleText μΈν„°νŽ˜μ΄μŠ€λ₯Ό μΆ”κ°€ν–ˆμŠ΅λ‹ˆλ‹€. GtkText μΈν„°νŽ˜μ΄μŠ€μ—λŠ” 슀크린 리더와 μƒν˜Έμž‘μš©ν•˜κΈ° μœ„ν•œ AT-SPI ν”„λ‘œν† μ½œμ— λŒ€ν•œ 지원이 μΆ”κ°€λ˜μ—ˆμŠ΅λ‹ˆλ‹€.
  • ν”Œλž«νΌμ—μ„œ WGL APIλ₯Ό μ‚¬μš©ν•˜μ—¬ GPU λ Œλ”λ§ κΈ°λŠ₯을 μΆ”κ°€ν–ˆμŠ΅λ‹ˆλ‹€. Windows.
  • CSS 기반 ν…Œλ§ˆλ₯Ό λ‘œλ“œν•  λ•Œ λ©”λͺ¨λ¦¬ μ†ŒλΉ„κ°€ κ°μ†Œλ˜μ—ˆμŠ΅λ‹ˆλ‹€.

좜처 : opennet.ru

DDoS 보호, VPS VDS μ„œλ²„κ°€ μžˆλŠ” μ‚¬μ΄νŠΈλ₯Ό μœ„ν•œ μ•ˆμ •μ μΈ ν˜ΈμŠ€νŒ… κ΅¬μž… πŸ”₯ DDoS 곡격 λ°©μ§€ κΈ°λŠ₯이 νƒ‘μž¬λœ μ•ˆμ •μ μΈ μ›Ήμ‚¬μ΄νŠΈ ν˜ΈμŠ€νŒ…, VPS 및 VDS μ„œλ²„λ₯Ό κ΅¬λ§€ν•˜μ„Έμš” | ProHoster