{"id":1625,"date":"2026-07-31T12:04:32","date_gmt":"2026-07-31T10:04:32","guid":{"rendered":"https:\/\/karwackiart.com\/?page_id=1625"},"modified":"2026-08-10T23:57:13","modified_gmt":"2026-08-10T21:57:13","slug":"model-3d-skrzynia-fantasy","status":"publish","type":"page","link":"https:\/\/karwackiart.com\/?page_id=1625","title":{"rendered":"Model 3D &#8211; Skrzynia fantasy"},"content":{"rendered":"<nav style=\"--separator: &quot;\/&quot;\" class=\"wp-block-breadcrumbs has-small-font-size\" aria-label=\"Okruszki\"><ol><li><a href=\"https:\/\/karwackiart.com\/\">Strona g\u0142\u00f3wna<\/a><\/li><li><a href=\"https:\/\/karwackiart.com\/?page_id=1390\">Sprzeda\u017c<\/a><\/li><li><a href=\"https:\/\/karwackiart.com\/?page_id=1405\">Sklep &#8211; modele 3D<\/a><\/li><li><span aria-current=\"page\">Model 3D &#8211; Skrzynia fantasy<\/span><\/li><\/ol><\/nav>\n\n\n<meta charset=\"UTF-8\">\n  <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0, maximum-scale=5.0\">\n  <title>Skrzynia fantasy &#8211; Model 3D | KarwackiArt<\/title>\n  \n  <!-- Google Fonts & Font Awesome Icons -->\n  <link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\n  <link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin=\"\">\n  <link href=\"https:\/\/fonts.googleapis.com\/css2?family=Cinzel:wght@600;700&amp;family=Inter:wght@300;400;500;600;700&amp;display=swap\" rel=\"stylesheet\">\n  <link rel=\"stylesheet\" href=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/font-awesome\/6.5.1\/css\/all.min.css\">\n\n  <!-- Three.js Library & OrbitControls -->\n  <script src=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/three.js\/r128\/three.min.js\"><\/script>\n  <script src=\"https:\/\/cdn.jsdelivr.net\/npm\/three@0.128.0\/examples\/js\/controls\/OrbitControls.js\"><\/script>\n\n  <!-- FBX Model Loader Dependencies -->\n  <script src=\"https:\/\/cdn.jsdelivr.net\/npm\/fflate@0.7.4\/umd\/index.min.js\"><\/script>\n  <script src=\"https:\/\/cdn.jsdelivr.net\/npm\/three@0.128.0\/examples\/js\/loaders\/FBXLoader.js\"><\/script>\n\n  <script type=\"module\" src=\"https:\/\/ajax.googleapis.com\/ajax\/libs\/model-viewer\/3.4.0\/model-viewer.min.js\"><\/script>\n\n  <style>\n    :root {\n      --bg-dark: #0b0c10;\n      --card-bg: #151821;\n      --card-border: rgba(255, 255, 255, 0.08);\n      --accent-gold: #d4af37;\n      --accent-gold-hover: #e6c254;\n      --accent-gold-soft: rgba(212, 175, 55, 0.12);\n      --text-main: #f0f2f5;\n      --text-muted: #9aa1b1;\n      --btn-cgtrader: #d1c27b;\n      --btn-cgtrader-hover: #e6c254;\n      --radius-lg: 16px;\n      --radius-md: 12px;\n      --radius-sm: 8px;\n    }\n\n    * {\n      box-sizing: border-box;\n      margin: 0;\n      padding: 0;\n    }\n\n    body {\n      background-color: var(--bg-dark);\n      color: var(--text-main);\n      font-family: 'Inter', system-ui, -apple-system, sans-serif;\n      line-height: 1.6;\n      padding: 20px 16px;\n      min-height: 100vh;\n    }\n\n    .container {\n      max-width: 1280px;\n      width: 100%;\n      margin: 0 auto;\n    }\n\n    \/* Breadcrumbs Navigation *\/\n    .breadcrumbs {\n      display: flex;\n      flex-wrap: wrap;\n      align-items: center;\n      gap: 8px;\n      font-size: 0.85rem;\n      color: var(--text-muted);\n      margin-bottom: 20px;\n    }\n\n    .breadcrumbs a {\n      color: var(--text-muted);\n      text-decoration: none;\n      transition: color 0.2s;\n    }\n\n    .breadcrumbs a:hover {\n      color: var(--accent-gold);\n    }\n\n    .breadcrumbs i {\n      font-size: 0.7rem;\n      opacity: 0.6;\n    }\n\n    \/* Main Grid Layout *\/\n    .product-wrapper {\n      display: grid;\n      grid-template-columns: 1.15fr 1fr;\n      gap: 32px;\n      align-items: start;\n    }\n\n    \/* LEFT COLUMN: 3D Viewer & Gallery Section *\/\n    .media-section {\n      background: var(--card-bg);\n      border: 1px solid var(--card-border);\n      border-radius: var(--radius-lg);\n      padding: 20px;\n      box-shadow: 0 16px 36px rgba(0, 0, 0, 0.4);\n      width: 100%;\n      min-width: 0;\n    }\n\n    .media-tabs {\n      display: flex;\n      flex-wrap: wrap;\n      gap: 10px;\n      margin-bottom: 16px;\n      border-bottom: 1px solid var(--card-border);\n      padding-bottom: 12px;\n    }\n\n    .media-tab-btn {\n      background: transparent;\n      border: 1px solid var(--card-border);\n      color: var(--text-muted);\n      padding: 8px 16px;\n      border-radius: var(--radius-sm);\n      font-size: 0.85rem;\n      font-weight: 600;\n      cursor: pointer;\n      display: inline-flex;\n      align-items: center;\n      gap: 8px;\n      transition: all 0.2s ease;\n      touch-action: manipulation;\n    }\n\n    .media-tab-btn.active, .media-tab-btn:hover {\n      background: var(--accent-gold-soft);\n      color: var(--accent-gold);\n      border-color: var(--accent-gold);\n    }\n\n    \/* Dynamic Media Display Box *\/\n    .media-display {\n      position: relative;\n      width: 100%;\n      aspect-ratio: 4 \/ 3;\n      min-height: 340px;\n      max-height: 540px;\n      border-radius: var(--radius-md);\n      overflow: hidden;\n      background: #0f1118;\n      display: flex;\n      align-items: center;\n      justify-content: center;\n    }\n\n    .shortcode-3d-wrapper {\n      width: 100%;\n      height: 100%;\n      display: flex;\n      flex-direction: column;\n      align-items: center;\n      justify-content: center;\n      position: relative;\n      overflow: hidden;\n    }\n\n    .shortcode-3d-wrapper > iframe,\n    .shortcode-3d-wrapper > model-viewer,\n    .shortcode-3d-wrapper > div,\n    .shortcode-3d-wrapper > .wp-3d-viewer-container,\n    .shortcode-3d-wrapper > .view3d-canvas-container {\n      width: 100% !important;\n      height: 100% !important;\n      max-width: 100% !important;\n      max-height: 100% !important;\n      border: none !important;\n      outline: none !important;\n      display: block !important;\n      position: absolute !important;\n      top: 0 !important;\n      left: 0 !important;\n    }\n\n    #fallback-3d-canvas {\n      width: 100% !important;\n      height: 100% !important;\n      border-radius: var(--radius-md);\n      cursor: grab;\n      touch-action: none;\n      display: block;\n      position: absolute;\n      top: 0;\n      left: 0;\n      z-index: 1;\n    }\n    \n    #fallback-3d-canvas:active {\n      cursor: grabbing;\n    }\n\n    \/* Floating Hint Badge - POPRAWIONO (Usuni\u0119to rozmywaj\u0105cy backdrop-filter) *\/\n    .viewer-hint {\n      position: absolute;\n      bottom: 12px;\n      left: 12px;\n      background: rgba(11, 12, 16, 0.9);\n      padding: 6px 12px;\n      border-radius: 20px;\n      border: 1px solid rgba(212, 175, 55, 0.35);\n      font-size: 0.72rem;\n      color: var(--accent-gold);\n      pointer-events: none;\n      display: flex;\n      align-items: center;\n      gap: 6px;\n      z-index: 5;\n    }\n\n    \/* Gallery Display View *\/\n    .gallery-view {\n      display: none;\n      width: 100%;\n      height: 100%;\n    }\n\n    .gallery-view.active {\n      display: block;\n    }\n\n    .main-render-img {\n      width: 100%;\n      height: 100%;\n      object-fit: contain;\n      background-color: #000;\n    }\n\n    \/* Thumbnails Grid *\/\n    .thumbnails-grid {\n      display: grid;\n      grid-template-columns: repeat(auto-fit, minmax(70px, 1fr));\n      gap: 10px;\n      margin-top: 16px;\n    }\n\n    .thumb-item {\n      aspect-ratio: 1 \/ 1;\n      border-radius: var(--radius-sm);\n      overflow: hidden;\n      border: 2px solid transparent;\n      cursor: pointer;\n      background: #000;\n      opacity: 0.6;\n      transition: all 0.2s ease;\n      touch-action: manipulation;\n    }\n\n    .thumb-item.active, .thumb-item:hover {\n      opacity: 1;\n      border-color: var(--accent-gold);\n    }\n\n    .thumb-item img {\n      width: 100%;\n      height: 100%;\n      object-fit: cover;\n    }\n\n    \/* RIGHT COLUMN: Product Info & Purchase *\/\n    .info-section {\n      display: flex;\n      flex-direction: column;\n      gap: 20px;\n      width: 100%;\n      min-width: 0;\n    }\n\n    .category-badge {\n      display: inline-flex;\n      align-items: center;\n      gap: 6px;\n      font-size: 0.72rem;\n      font-weight: 700;\n      letter-spacing: 1.2px;\n      text-transform: uppercase;\n      color: var(--accent-gold);\n      background: var(--accent-gold-soft);\n      padding: 5px 12px;\n      border-radius: 20px;\n      border: 1px solid rgba(212, 175, 55, 0.25);\n      width: fit-content;\n    }\n\n    .product-title {\n      font-family: 'Cinzel', serif;\n      font-size: clamp(1.6rem, 3vw, 2.2rem);\n      font-weight: 700;\n      line-height: 1.25;\n      color: #ffffff;\n      margin-top: 8px;\n    }\n\n    .price-box {\n      display: flex;\n      flex-wrap: wrap;\n      align-items: baseline;\n      gap: 12px;\n      padding: 14px 0;\n      border-top: 1px solid var(--card-border);\n      border-bottom: 1px solid var(--card-border);\n    }\n\n    .current-price {\n      font-size: 2rem;\n      font-weight: 700;\n      color: var(--accent-gold);\n    }\n\n    .price-subtext {\n      font-size: 0.85rem;\n      color: var(--text-muted);\n    }\n\n    \/* External Buy CTA Box *\/\n    .buy-box {\n      background: var(--card-bg);\n      border: 1px solid var(--card-border);\n      border-radius: var(--radius-lg);\n      padding: 20px;\n      display: flex;\n      flex-direction: column;\n      gap: 12px;\n    }\n\n    .buy-box-header {\n      font-size: 0.82rem;\n      font-weight: 700;\n      color: var(--text-muted);\n      text-transform: uppercase;\n      letter-spacing: 0.8px;\n    }\n\n    .btn-buy {\n      display: flex;\n      align-items: center;\n      justify-content: space-between;\n      padding: 14px 18px;\n      border-radius: var(--radius-sm);\n      text-decoration: none;\n      font-weight: 600;\n      font-size: 0.92rem;\n      transition: all 0.25s ease;\n      min-height: 48px;\n      box-shadow: 0 4px 14px rgba(0,0,0,0.3);\n    }\n\n    .btn-buy-cgtrader {\n      background: var(--btn-cgtrader);\n      color: #111111 !important;\n    }\n\n    .btn-buy-cgtrader:hover {\n      background: var(--btn-cgtrader-hover);\n      transform: translateY(-2px);\n      box-shadow: 0 6px 18px rgba(209, 194, 123, 0.35);\n    }\n\n    .platform-note {\n      font-size: 0.78rem;\n      color: var(--text-muted);\n      text-align: center;\n      display: flex;\n      align-items: center;\n      justify-content: center;\n      gap: 6px;\n      margin-top: 4px;\n    }\n\n    \/* Expandable Tabs & Tech Specs *\/\n    .details-tabs {\n      background: var(--card-bg);\n      border: 1px solid var(--card-border);\n      border-radius: var(--radius-lg);\n      padding: 20px;\n    }\n\n    .tab-nav {\n      display: flex;\n      gap: 16px;\n      border-bottom: 1px solid var(--card-border);\n      margin-bottom: 16px;\n      overflow-x: auto;\n      white-space: nowrap;\n    }\n\n    .tab-link {\n      background: none;\n      border: none;\n      color: var(--text-muted);\n      font-size: 0.9rem;\n      font-weight: 600;\n      padding: 8px 4px 12px 4px;\n      cursor: pointer;\n      position: relative;\n      transition: color 0.2s;\n      touch-action: manipulation;\n    }\n\n    .tab-link.active {\n      color: var(--accent-gold);\n    }\n\n    .tab-link.active::after {\n      content: '';\n      position: absolute;\n      bottom: -1px;\n      left: 0;\n      width: 100%;\n      height: 2px;\n      background: var(--accent-gold);\n    }\n\n    .tab-content {\n      display: none;\n      color: var(--text-muted);\n      font-size: 0.9rem;\n      line-height: 1.7;\n    }\n\n    .tab-content.active {\n      display: block;\n    }\n\n    .specs-grid {\n      display: grid;\n      grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));\n      gap: 10px;\n    }\n\n    .spec-item {\n      background: rgba(255, 255, 255, 0.02);\n      padding: 10px 12px;\n      border-radius: var(--radius-sm);\n      border: 1px solid var(--card-border);\n    }\n\n    .spec-label {\n      font-size: 0.72rem;\n      text-transform: uppercase;\n      letter-spacing: 0.5px;\n      color: var(--text-muted);\n      display: block;\n      margin-bottom: 2px;\n    }\n\n    .spec-value {\n      font-size: 0.9rem;\n      font-weight: 600;\n      color: var(--text-main);\n    }\n\n    \/* RESPONSIVE BREAKPOINTS *\/\n    @media (max-width: 992px) {\n      .product-wrapper {\n        grid-template-columns: 1fr;\n        gap: 24px;\n      }\n      .media-display {\n        aspect-ratio: 4 \/ 3;\n        min-height: 280px;\n      }\n    }\n\n    @media (max-width: 576px) {\n      body {\n        padding: 12px 10px;\n      }\n      .media-section {\n        padding: 12px;\n      }\n      .media-display {\n        aspect-ratio: 1 \/ 1;\n        min-height: 260px;\n      }\n      .media-tab-btn {\n        flex: 1;\n        justify-content: center;\n        padding: 8px 10px;\n        font-size: 0.8rem;\n      }\n      .thumbnails-grid {\n        grid-template-columns: repeat(4, 1fr);\n        gap: 6px;\n      }\n      .buy-box {\n        padding: 16px;\n      }\n      .btn-buy {\n        padding: 12px 14px;\n        font-size: 0.85rem;\n      }\n      .specs-grid {\n        grid-template-columns: 1fr 1fr;\n      }\n    }\n  <\/style>\n\n<div class=\"container\">\n\n  <!-- Breadcrumbs -->\n  <nav class=\"breadcrumbs\" aria-label=\"\u015acie\u017cka nawigacji\">\n    <a href=\"#\">Sklep<\/a>\n    <i class=\"fa-solid fa-chevron-right\"><\/i>\n    <a href=\"#\">Modele 3D<\/a>\n    <i class=\"fa-solid fa-chevron-right\"><\/i>\n    <span>Skrzynia fantasy<\/span>\n  <\/nav>\n\n  <!-- Product Wrapper (Main Grid) -->\n  <div class=\"product-wrapper\">\n\n    <!-- LEFT COLUMN: 3D Viewer & Media Gallery -->\n    <div class=\"media-section\">\n      \n      <!-- Media Mode Switcher Tabs -->\n      <div class=\"media-tabs\">\n        <button class=\"media-tab-btn active\" onclick=\"switchMediaMode('3d')\">\n          <i class=\"fa-solid fa-cube\"><\/i> Podgl\u0105d 3D\n        <\/button>\n        <button class=\"media-tab-btn\" onclick=\"switchMediaMode('gallery')\">\n          <i class=\"fa-solid fa-image\"><\/i> Galeria Render\u00f3w\n        <\/button>\n      <\/div>\n\n      <!-- Display Box -->\n      <div class=\"media-display\">\n        \n        <!-- Interactive 3D Viewer Container -->\n        <div id=\"view-3d-container\" class=\"shortcode-3d-wrapper\">\n          \n          <!-- WordPress 3D Viewer Plugin Shortcode -->\n          \n        <div class=\"modelViewerBlock\" data-attributes='{&quot;model&quot;:{&quot;modelUrl&quot;:&quot;https:\\\/\\\/karwackiart.com\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/Chest.fbx&quot;,&quot;poster&quot;:&quot;https:\\\/\\\/karwackiart.com\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/Chest.fbx&quot;,&quot;arEnabled&quot;:false,&quot;arMode&quot;:&quot;webxr&quot;,&quot;arPlacement&quot;:&quot;floor&quot;,&quot;modelISOSrc&quot;:&quot;&quot;},&quot;align&quot;:&quot;center&quot;,&quot;uniqueId&quot;:&quot;model1525&quot;,&quot;currentViewer&quot;:&quot;O3DViewer&quot;,&quot;O3DVSettings&quot;:{&quot;isFullscreen&quot;:true,&quot;camera&quot;:null,&quot;mouseControl&quot;:true,&quot;zoom&quot;:true},&quot;lazyLoad&quot;:false,&quot;loading&quot;:&quot;auto&quot;,&quot;zoom&quot;:true,&quot;preload&quot;:&quot;auto&quot;,&quot;mouseControl&quot;:true,&quot;fullscreen&quot;:true,&quot;zoomInOutBtn&quot;:true,&quot;cameraBtn&quot;:false,&quot;downloadBtn&quot;:false,&quot;loadingPercentage&quot;:false,&quot;progressBar&quot;:true,&quot;exposure&quot;:&quot;1&quot;,&quot;shadow&quot;:1,&quot;woo&quot;:false,&quot;placement&quot;:&quot;shortcode&quot;,&quot;styles&quot;:{&quot;width&quot;:&quot;100%&quot;,&quot;height&quot;:&quot;320px&quot;,&quot;bgColor&quot;:&quot;transparent&quot;}}'>\n            <div class=\"bp3d_backup_view\" style=\"display: none;height:350px;\">\n                <model-viewer camera-controls src=\"https:\/\/karwackiart.com\/wp-content\/uploads\/2026\/07\/Chest.fbx\" style=\"height: 350px;\"><\/model-viewer>\n            <\/div>\n        <\/div>\n\n        \n\n          <!-- Three.js Fallback WebGL Canvas -->\n          <canvas id=\"fallback-3d-canvas\"><\/canvas>\n\n          <!-- Interactive Control Hint -->\n          <div class=\"viewer-hint\">\n            <i class=\"fa-solid fa-arrows-spin\"><\/i> Przytrzymaj i przeci\u0105gnij, aby obr\u00f3ci\u0107\n          <\/div>\n\n        <\/div>\n\n        <!-- Static Render Gallery View -->\n        <div id=\"view-gallery-container\" class=\"gallery-view\">\n          <img decoding=\"async\" id=\"mainRenderImage\" class=\"main-render-img\" src=\"https:\/\/karwackiart.com\/wp-content\/uploads\/2026\/07\/Model-3D-Skrzynia.jpg\" alt=\"Render g\u0142\u00f3wny model 3D\" onerror=\"this.src='https:\/\/placehold.co\/600x600\/151821\/d4af37?text=Render+Modelu+3D'\">\n        <\/div>\n\n      <\/div>\n\n      <!-- Gallery Thumbnails -->\n      <div class=\"thumbnails-grid\">\n        <div class=\"thumb-item active\" onclick=\"selectThumbnail(this, 'https:\/\/karwackiart.com\/wp-content\/uploads\/2026\/07\/Model-3D-Skrzynia.jpg')\">\n          <img decoding=\"async\" src=\"https:\/\/karwackiart.com\/wp-content\/uploads\/2026\/07\/Model-3D-Skrzynia.jpg\" alt=\"Miniatura 1\" onerror=\"this.src='https:\/\/placehold.co\/150x150\/151821\/d4af37?text=Render+1'\">\n        <\/div>\n        <div class=\"thumb-item\" onclick=\"selectThumbnail(this, 'https:\/\/placehold.co\/600x600\/1a1e2b\/d4af37?text=Wireframe+Siatka')\">\n          <img decoding=\"async\" src=\"https:\/\/placehold.co\/150x150\/1a1e2b\/d4af37?text=Siatka+3D\" alt=\"Miniatura 2\">\n        <\/div>\n        <div class=\"thumb-item\" onclick=\"selectThumbnail(this, 'https:\/\/placehold.co\/600x600\/151821\/2e86de?text=Tekstury+PBR')\">\n          <img decoding=\"async\" src=\"https:\/\/placehold.co\/150x150\/151821\/2e86de?text=Tekstury\" alt=\"Miniatura 3\">\n        <\/div>\n      <\/div>\n\n    <\/div> <!-- CLOSING LEFT COLUMN (.media-section) -->\n\n    <!-- RIGHT COLUMN: Details & Buying Links -->\n    <div class=\"info-section\">\n      \n      <div>\n        <div class=\"category-badge\">\n          <i class=\"fa-solid fa-shapes\"><\/i> Model 3D \u2022 Low-Poly\n        <\/div>\n        <h1 class=\"product-title\">Skrzynia fantasy<\/h1>\n      <\/div>\n\n      <!-- Price Box -->\n      <div class=\"price-box\">\n        <span class=\"current-price\">00,00 PLN<\/span>\n        <span class=\"price-subtext\">(Pliki cyfrowe + Licencja)<\/span>\n      <\/div>\n\n      <!-- External Purchase CTA Box -->\n      <div class=\"buy-box\">\n        <div class=\"buy-box-header\">Kup pliki i licencj\u0119:<\/div>\n        \n        <a href=\"https:\/\/www.cgtrader.com\/free-3d-models\/furniture\/other\/medieval-fantasy-wooden-chest\" target=\"_blank\" rel=\"noopener\" class=\"btn-buy btn-buy-cgtrader\">\n          <span><i class=\"fa-solid fa-store\"><\/i> Kup <\/span>\n          <i class=\"fa-solid fa-arrow-up-right-from-square\"><\/i>\n        <\/a>\n\n        <div class=\"platform-note\">\n          <i class=\"fa-solid fa-shield-halved\"><\/i> Natychmiastowe pobieranie plik\u00f3w po zakupie.\n        <\/div>\n      <\/div>\n\n      <!-- Expandable Info Tabs -->\n      <div class=\"details-tabs\">\n        <div class=\"tab-nav\">\n          <button class=\"tab-link active\" onclick=\"switchDetailTab(event, 'desc')\">Opis Projektu<\/button>\n          <button class=\"tab-link\" onclick=\"switchDetailTab(event, 'specs')\">Specyfikacja 3D<\/button>\n          <button class=\"tab-link\" onclick=\"switchDetailTab(event, 'licence')\">Licencja<\/button>\n        <\/div>\n\n        <!-- Tab 1: Description -->\n        <div id=\"tab-desc\" class=\"tab-content active\">\n          <p>Drewniana skrzynia w stylu fantasy w stylu \u015bredniowiecznym, zaprojektowana jako wszechstronny rekwizyt do gier, \u015brodowisk RPG, film\u00f3w i projekt\u00f3w wizualizacyjnych.<\/p>\n          <p style=\"margin-top: 10px;\">Skrzynia charakteryzuje si\u0119 r\u0119cznie wykonan\u0105 drewnian\u0105 konstrukcj\u0105 z widocznym us\u0142ojeniem, wzmocnionymi metalowymi opaskami, ozdobnymi metalowymi detalami i centralnym zamkiem. Jej postarzany i lekko zu\u017cyty wygl\u0105d sprawia, \u017ce nadaje si\u0119 do \u015brodowisk o tematyce \u015bredniowiecznej, fantasy i przygodowej. Idealna do zamk\u00f3w, loch\u00f3w, wiosek, tawern, skarbc\u00f3w i innych \u015bredniowiecznych scen fantasy.<\/p>\n        <\/div>\n\n        <!-- Tab 2: Technical Specs Grid -->\n        <div id=\"tab-specs\" class=\"tab-content\">\n          <div class=\"specs-grid\">\n            <div class=\"spec-item\">\n              <span class=\"spec-label\">Siatka (Polys)<\/span>\n              <span class=\"spec-value\">11 875<\/span>\n            <\/div>\n            <div class=\"spec-item\">\n              <span class=\"spec-label\">Wierzcho\u0142ki<\/span>\n              <span class=\"spec-value\">11 434<\/span>\n            <\/div>\n            <div class=\"spec-item\">\n              <span class=\"spec-label\">Formaty plik\u00f3w<\/span>\n              <span class=\"spec-value\">.FBX, .OBJ, .MAX<\/span>\n            <\/div>\n            <div class=\"spec-item\">\n              <span class=\"spec-label\">Tekstury<\/span>\n              <span class=\"spec-value\">PNG <\/span>\n            <\/div>\n            <div class=\"spec-item\">\n              <span class=\"spec-label\">Riggowanie<\/span>\n              <span class=\"spec-value\">Brak<\/span>\n            <\/div>\n            <div class=\"spec-item\">\n              <span class=\"spec-label\">Geometria<\/span>\n              <span class=\"spec-value\">Polygon (mesh)<\/span>\n            <\/div>\n          <\/div>\n        <\/div>\n\n        <!-- Tab 3: Licence -->\n        <div id=\"tab-licence\" class=\"tab-content\">\n          <p><strong>Standardowa Licencja Komercyjna:<\/strong> Zezwala na u\u017cycie modelu w projektach komercyjnych (gry, filmy, reklamy, druki 3D). Zabroniona jest dalsza odsprzeda\u017c lub darmowe rozpowszechnianie samych plik\u00f3w \u017ar\u00f3d\u0142owych 3D.<\/p>\n        <\/div>\n      <\/div>\n\n    <\/div> <!-- CLOSING RIGHT COLUMN (.info-section) -->\n\n  <\/div> <!-- CLOSING .product-wrapper -->\n\n<\/div>\n\n<script>\n  \/\/ Mode Switcher: 3D Shortcode Viewer vs Image Gallery\n  function switchMediaMode(mode) {\n    const btns = document.querySelectorAll('.media-tab-btn');\n    const container3d = document.getElementById('view-3d-container');\n    const containerGallery = document.getElementById('view-gallery-container');\n\n    if (mode === '3d') {\n      btns[0].classList.add('active');\n      btns[1].classList.remove('active');\n      container3d.style.display = 'flex';\n      containerGallery.classList.remove('active');\n      if (window.onResize3D) window.onResize3D();\n    } else {\n      btns[1].classList.add('active');\n      btns[0].classList.remove('active');\n      container3d.style.display = 'none';\n      containerGallery.classList.add('active');\n    }\n  }\n\n  \/\/ Setup Interactive Three.js 3D Scene\n  window.addEventListener('load', function() {\n    const container = document.getElementById('view-3d-container');\n    const canvas = document.getElementById('fallback-3d-canvas');\n    \n    if (!container || !canvas) return;\n\n    \/\/ Helper: Check if WordPress plugin rendered its own 3D viewer element\n    function checkAndToggleWPViewer() {\n      const wpRenderedElement = container.querySelector('iframe, model-viewer, .model-viewer, .wp-3d-viewer-canvas, .view3d-canvas, canvas:not(#fallback-3d-canvas)');\n      if (wpRenderedElement) {\n        canvas.style.display = 'none';\n        return true;\n      }\n      return false;\n    }\n\n    if (checkAndToggleWPViewer()) return;\n\n    const observer = new MutationObserver(function() {\n      if (checkAndToggleWPViewer()) {\n        observer.disconnect();\n      }\n    });\n    observer.observe(container, { childList: true, subtree: true });\n\n    if (!window.THREE) return;\n\n    \/\/ Initialize Three.js Scene\n    const scene = new THREE.Scene();\n    scene.background = new THREE.Color(0x0f1118);\n\n    const camera = new THREE.PerspectiveCamera(45, container.clientWidth \/ container.clientHeight, 0.1, 100);\n    camera.position.set(2.4, 1.7, 3.1);\n\n    \/\/ POPRAWIONO: Optymalizacja parametr\u00f3w renderera pod k\u0105tem ostro\u015bci\n    const renderer = new THREE.WebGLRenderer({ \n      canvas: canvas, \n      antialias: true, \n      alpha: true, \n      powerPreference: \"high-performance\" \n    });\n    renderer.setSize(container.clientWidth, container.clientHeight);\n    renderer.setPixelRatio(Math.min(window.devicePixelRatio, 2));\n    renderer.shadowMap.enabled = true;\n    renderer.shadowMap.type = THREE.PCFSoftShadowMap;\n\n    \/\/ POPRAWIONO: Prawid\u0142owe przestrzenie kolor\u00f3w (Zapobiega zmatowieniu tekstur)\n    if ('outputColorSpace' in renderer) {\n      renderer.outputColorSpace = THREE.SRGBColorSpace;\n    } else if (THREE.sRGBEncoding) {\n      renderer.outputEncoding = THREE.sRGBEncoding;\n    }\n    if (THREE.ACESFilmicToneMapping) {\n      renderer.toneMapping = THREE.ACESFilmicToneMapping;\n      renderer.toneMappingExposure = 1.0; \n    }\n\n    \/\/ Orbit Controls\n    let controls;\n    if (window.THREE.OrbitControls) {\n      controls = new THREE.OrbitControls(camera, renderer.domElement);\n      controls.enableDamping = true;\n      controls.dampingFactor = 0.05;\n      controls.autoRotate = true;\n      controls.autoRotateSpeed = 1.2;\n      controls.enableZoom = true;\n      controls.maxPolarAngle = Math.PI \/ 2 + 0.05;\n      controls.target.set(0, 0.45, 0);\n    }\n\n    \/\/ POPRAWIONO: Skorygowane o\u015bwietlenie studyjne usuwaj\u0105ce \"mg\u0142\u0119\"\n    const ambientLight = new THREE.AmbientLight(0xffffff, 0.8);\n    scene.add(ambientLight);\n\n    const goldKeyLight = new THREE.DirectionalLight(0xfffaed, 1.8);\n    goldKeyLight.position.set(5, 8, 5);\n    goldKeyLight.castShadow = true;\n    scene.add(goldKeyLight);\n\n    const fillLight = new THREE.DirectionalLight(0x88bbff, 0.6);\n    fillLight.position.set(-5, 3, -2);\n    scene.add(fillLight);\n\n    const rimLight = new THREE.DirectionalLight(0xffffff, 0.8);\n    rimLight.position.set(0, 4, -4);\n    scene.add(rimLight);\n\n    \/\/ BUILD PROCEDURAL CHEST GROUP\n    let activeModelGroup = new THREE.Group();\n\n    const woodMat = new THREE.MeshStandardMaterial({\n      color: 0x7c4927,\n      roughness: 0.45,\n      metalness: 0.05\n    });\n\n    const metalMat = new THREE.MeshStandardMaterial({\n      color: 0x22262e,\n      roughness: 0.25,\n      metalness: 0.9\n    });\n\n    const goldMat = new THREE.MeshStandardMaterial({\n      color: 0xe5ba38,\n      roughness: 0.15,\n      metalness: 0.95\n    });\n\n    \/\/ Main Chest Base Box\n    const baseGeo = new THREE.BoxGeometry(1.6, 0.7, 1.0);\n    const baseMesh = new THREE.Mesh(baseGeo, woodMat);\n    baseMesh.position.y = 0.35;\n    baseMesh.castShadow = true;\n    baseMesh.receiveShadow = true;\n    activeModelGroup.add(baseMesh);\n\n    \/\/ Curved Chest Lid\n    const lidRadius = 0.5;\n    const lidGeo = new THREE.CylinderGeometry(lidRadius, lidRadius, 1.6, 24, 1, false, 0, Math.PI);\n    const lidMesh = new THREE.Mesh(lidGeo, woodMat);\n    lidMesh.rotation.z = Math.PI \/ 2;\n    lidMesh.position.y = 0.7;\n    lidMesh.castShadow = true;\n    lidMesh.receiveShadow = true;\n    activeModelGroup.add(lidMesh);\n\n    \/\/ Metal Straps\/Bands\n    const strapWidth = 0.12;\n\n    [-0.5, 0.5].forEach(xOffset => {\n      const strapGeo = new THREE.BoxGeometry(strapWidth, 0.72, 1.04);\n      const strapMesh = new THREE.Mesh(strapGeo, metalMat);\n      strapMesh.position.set(xOffset, 0.35, 0);\n      strapMesh.castShadow = true;\n      activeModelGroup.add(strapMesh);\n\n      const lidStrapGeo = new THREE.CylinderGeometry(lidRadius + 0.01, lidRadius + 0.01, strapWidth, 24, 1, false, 0, Math.PI);\n      const lidStrapMesh = new THREE.Mesh(lidStrapGeo, metalMat);\n      lidStrapMesh.rotation.z = Math.PI \/ 2;\n      lidStrapMesh.position.set(xOffset, 0.7, 0);\n      lidStrapMesh.castShadow = true;\n      activeModelGroup.add(lidStrapMesh);\n    });\n\n    \/\/ Front Lock Plate & Keyhole\n    const lockPlateGeo = new THREE.BoxGeometry(0.24, 0.28, 0.04);\n    const lockPlateMesh = new THREE.Mesh(lockPlateGeo, goldMat);\n    lockPlateMesh.position.set(0, 0.65, 0.52);\n    lockPlateMesh.castShadow = true;\n    activeModelGroup.add(lockPlateMesh);\n\n    const keyholeGeo = new THREE.CylinderGeometry(0.02, 0.02, 0.06, 12);\n    const keyholeMesh = new THREE.Mesh(keyholeGeo, metalMat);\n    keyholeMesh.rotation.x = Math.PI \/ 2;\n    keyholeMesh.position.set(0, 0.64, 0.53);\n    activeModelGroup.add(keyholeMesh);\n\n    \/\/ Shadow Disc\n    const shadowGeo = new THREE.CircleGeometry(1.2, 32);\n    const shadowMat = new THREE.MeshBasicMaterial({ color: 0x000000, transparent: true, opacity: 0.4 });\n    const shadowMesh = new THREE.Mesh(shadowGeo, shadowMat);\n    shadowMesh.rotation.x = -Math.PI \/ 2;\n    shadowMesh.position.y = 0.01;\n    scene.add(shadowMesh);\n\n    scene.add(activeModelGroup);\n\n    \/\/ Uniwersalna funkcja do wczytywania FBX\n    window.loadFBXModel = function(url) {\n      if (!window.THREE || !window.THREE.FBXLoader) {\n        console.error(\"FBXLoader nie jest za\u0142adowany.\");\n        return;\n      }\n\n      const loader = new THREE.FBXLoader();\n      loader.load(url, function(object) {\n        scene.remove(activeModelGroup);\n        activeModelGroup = object;\n\n        const box = new THREE.Box3().setFromObject(object);\n        const center = box.getCenter(new THREE.Vector3());\n        const size = box.getSize(new THREE.Vector3());\n\n        object.position.x -= center.x;\n        object.position.y -= box.min.y;\n        object.position.z -= center.z;\n\n        const maxDim = Math.max(size.x, size.y, size.z);\n        if (maxDim > 0) {\n          const desiredSize = 1.6;\n          const scaleFactor = desiredSize \/ maxDim;\n          object.scale.set(scaleFactor, scaleFactor, scaleFactor);\n        }\n\n        object.traverse(function(child) {\n          if (child.isMesh) {\n            child.castShadow = true;\n            child.receiveShadow = true;\n            if (child.material) {\n              child.material.needsUpdate = true;\n            }\n          }\n        });\n\n        scene.add(object);\n\n        if (controls) {\n          controls.target.set(0, 0.45, 0);\n          controls.update();\n        }\n      }, undefined, function(error) {\n        console.error(\"B\u0142\u0105d podczas \u0142adowania pliku FBX:\", error);\n      });\n    };\n\n    \/\/ Animation rendering loop\n    function animate() {\n      requestAnimationFrame(animate);\n      if (controls) controls.update();\n      renderer.render(scene, camera);\n    }\n    animate();\n\n    \/\/ Handle responsive container resizing\n    function onWindowResize() {\n      if (!container) return;\n      const width = container.clientWidth;\n      const height = container.clientHeight;\n      camera.aspect = width \/ height;\n      camera.updateProjectionMatrix();\n      renderer.setSize(width, height);\n    }\n    window.addEventListener('resize', onWindowResize);\n    window.onResize3D = onWindowResize;\n  });\n\n  \/\/ Select Gallery Thumbnail\n  function selectThumbnail(elem, imgSrc) {\n    document.querySelectorAll('.thumb-item').forEach(el => el.classList.remove('active'));\n    elem.classList.add('active');\n    const mainImg = document.getElementById('mainRenderImage');\n    if (mainImg) mainImg.src = imgSrc;\n  }\n\n  \/\/ Switch Detail Tabs\n  function switchDetailTab(evt, tabId) {\n    document.querySelectorAll('.tab-link').forEach(el => el.classList.remove('active'));\n    document.querySelectorAll('.tab-content').forEach(el => el.classList.remove('active'));\n\n    evt.currentTarget.classList.add('active');\n    const targetTab = document.getElementById('tab-' + tabId);\n    if (targetTab) targetTab.classList.add('active');\n  }\n<\/script>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Skrzynia fantasy &#8211; Model 3D | KarwackiArt Sklep Modele 3D Skrzynia fantasy Podgl\u0105d 3D Galeria Render\u00f3w Przytrzymaj i przeci\u0105gnij, aby obr\u00f3ci\u0107 Model 3D \u2022 Low-Poly Skrzynia fantasy 00,00 PLN (Pliki cyfrowe + Licencja) Kup pliki i licencj\u0119: Kup Natychmiastowe pobieranie plik\u00f3w po zakupie. Opis Projektu Specyfikacja 3D Licencja Drewniana skrzynia w stylu fantasy w stylu [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":1405,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"two_page_speed":[],"footnotes":""},"class_list":["post-1625","page","type-page","status-publish","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Model 3D - Skrzynia fantasy - KarwackiART<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/karwackiart.com\/?page_id=1625\" \/>\n<meta property=\"og:locale\" content=\"pl_PL\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Model 3D - Skrzynia fantasy - KarwackiART\" \/>\n<meta property=\"og:description\" content=\"Skrzynia fantasy &#8211; Model 3D | KarwackiArt Sklep Modele 3D Skrzynia fantasy Podgl\u0105d 3D Galeria Render\u00f3w Przytrzymaj i przeci\u0105gnij, aby obr\u00f3ci\u0107 Model 3D \u2022 Low-Poly Skrzynia fantasy 00,00 PLN (Pliki cyfrowe + Licencja) Kup pliki i licencj\u0119: Kup Natychmiastowe pobieranie plik\u00f3w po zakupie. Opis Projektu Specyfikacja 3D Licencja Drewniana skrzynia w stylu fantasy w stylu [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/karwackiart.com\/?page_id=1625\" \/>\n<meta property=\"og:site_name\" content=\"KarwackiART\" \/>\n<meta property=\"article:modified_time\" content=\"2026-08-10T21:57:13+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/karwackiart.com\/wp-content\/uploads\/2026\/07\/Model-3D-Skrzynia.jpg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Szacowany czas czytania\" \/>\n\t<meta name=\"twitter:data1\" content=\"2 minuty\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/karwackiart.com\\\/?page_id=1625\",\"url\":\"https:\\\/\\\/karwackiart.com\\\/?page_id=1625\",\"name\":\"Model 3D - Skrzynia fantasy - KarwackiART\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/karwackiart.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/karwackiart.com\\\/?page_id=1625#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/karwackiart.com\\\/?page_id=1625#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/karwackiart.com\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/Model-3D-Skrzynia.jpg\",\"datePublished\":\"2026-07-31T10:04:32+00:00\",\"dateModified\":\"2026-08-10T21:57:13+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/karwackiart.com\\\/?page_id=1625#breadcrumb\"},\"inLanguage\":\"pl-PL\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/karwackiart.com\\\/?page_id=1625\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pl-PL\",\"@id\":\"https:\\\/\\\/karwackiart.com\\\/?page_id=1625#primaryimage\",\"url\":\"\",\"contentUrl\":\"\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/karwackiart.com\\\/?page_id=1625#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Strona g\u0142\u00f3wna\",\"item\":\"https:\\\/\\\/karwackiart.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Sprzeda\u017c\",\"item\":\"https:\\\/\\\/karwackiart.com\\\/?page_id=1390\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Sklep &#8211; modele 3D\",\"item\":\"https:\\\/\\\/karwackiart.com\\\/?page_id=1405\"},{\"@type\":\"ListItem\",\"position\":4,\"name\":\"Model 3D &#8211; Skrzynia fantasy\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/karwackiart.com\\\/#website\",\"url\":\"https:\\\/\\\/karwackiart.com\\\/\",\"name\":\"KarwackiART\",\"description\":\"Illustrator, 3D artist\",\"publisher\":{\"@id\":\"https:\\\/\\\/karwackiart.com\\\/#\\\/schema\\\/person\\\/a0a55e55cf5973c50c194485108ec1da\"},\"alternateName\":\"Illustrator, 3D artist\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/karwackiart.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"pl-PL\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/karwackiart.com\\\/#\\\/schema\\\/person\\\/a0a55e55cf5973c50c194485108ec1da\",\"name\":\"K-Art\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pl-PL\",\"@id\":\"https:\\\/\\\/karwackiart.com\\\/wp-content\\\/uploads\\\/2025\\\/02\\\/KA-3.png\",\"url\":\"https:\\\/\\\/karwackiart.com\\\/wp-content\\\/uploads\\\/2025\\\/02\\\/KA-3.png\",\"contentUrl\":\"https:\\\/\\\/karwackiart.com\\\/wp-content\\\/uploads\\\/2025\\\/02\\\/KA-3.png\",\"width\":933,\"height\":928,\"caption\":\"K-Art\"},\"logo\":{\"@id\":\"https:\\\/\\\/karwackiart.com\\\/wp-content\\\/uploads\\\/2025\\\/02\\\/KA-3.png\"},\"sameAs\":[\"http:\\\/\\\/karwackiart.com\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Model 3D - Skrzynia fantasy - KarwackiART","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/karwackiart.com\/?page_id=1625","og_locale":"pl_PL","og_type":"article","og_title":"Model 3D - Skrzynia fantasy - KarwackiART","og_description":"Skrzynia fantasy &#8211; Model 3D | KarwackiArt Sklep Modele 3D Skrzynia fantasy Podgl\u0105d 3D Galeria Render\u00f3w Przytrzymaj i przeci\u0105gnij, aby obr\u00f3ci\u0107 Model 3D \u2022 Low-Poly Skrzynia fantasy 00,00 PLN (Pliki cyfrowe + Licencja) Kup pliki i licencj\u0119: Kup Natychmiastowe pobieranie plik\u00f3w po zakupie. Opis Projektu Specyfikacja 3D Licencja Drewniana skrzynia w stylu fantasy w stylu [&hellip;]","og_url":"https:\/\/karwackiart.com\/?page_id=1625","og_site_name":"KarwackiART","article_modified_time":"2026-08-10T21:57:13+00:00","og_image":[{"url":"https:\/\/karwackiart.com\/wp-content\/uploads\/2026\/07\/Model-3D-Skrzynia.jpg","type":"","width":"","height":""}],"twitter_card":"summary_large_image","twitter_misc":{"Szacowany czas czytania":"2 minuty"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/karwackiart.com\/?page_id=1625","url":"https:\/\/karwackiart.com\/?page_id=1625","name":"Model 3D - Skrzynia fantasy - KarwackiART","isPartOf":{"@id":"https:\/\/karwackiart.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/karwackiart.com\/?page_id=1625#primaryimage"},"image":{"@id":"https:\/\/karwackiart.com\/?page_id=1625#primaryimage"},"thumbnailUrl":"https:\/\/karwackiart.com\/wp-content\/uploads\/2026\/07\/Model-3D-Skrzynia.jpg","datePublished":"2026-07-31T10:04:32+00:00","dateModified":"2026-08-10T21:57:13+00:00","breadcrumb":{"@id":"https:\/\/karwackiart.com\/?page_id=1625#breadcrumb"},"inLanguage":"pl-PL","potentialAction":[{"@type":"ReadAction","target":["https:\/\/karwackiart.com\/?page_id=1625"]}]},{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/karwackiart.com\/?page_id=1625#primaryimage","url":"","contentUrl":""},{"@type":"BreadcrumbList","@id":"https:\/\/karwackiart.com\/?page_id=1625#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Strona g\u0142\u00f3wna","item":"https:\/\/karwackiart.com\/"},{"@type":"ListItem","position":2,"name":"Sprzeda\u017c","item":"https:\/\/karwackiart.com\/?page_id=1390"},{"@type":"ListItem","position":3,"name":"Sklep &#8211; modele 3D","item":"https:\/\/karwackiart.com\/?page_id=1405"},{"@type":"ListItem","position":4,"name":"Model 3D &#8211; Skrzynia fantasy"}]},{"@type":"WebSite","@id":"https:\/\/karwackiart.com\/#website","url":"https:\/\/karwackiart.com\/","name":"KarwackiART","description":"Illustrator, 3D artist","publisher":{"@id":"https:\/\/karwackiart.com\/#\/schema\/person\/a0a55e55cf5973c50c194485108ec1da"},"alternateName":"Illustrator, 3D artist","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/karwackiart.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pl-PL"},{"@type":["Person","Organization"],"@id":"https:\/\/karwackiart.com\/#\/schema\/person\/a0a55e55cf5973c50c194485108ec1da","name":"K-Art","image":{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/karwackiart.com\/wp-content\/uploads\/2025\/02\/KA-3.png","url":"https:\/\/karwackiart.com\/wp-content\/uploads\/2025\/02\/KA-3.png","contentUrl":"https:\/\/karwackiart.com\/wp-content\/uploads\/2025\/02\/KA-3.png","width":933,"height":928,"caption":"K-Art"},"logo":{"@id":"https:\/\/karwackiart.com\/wp-content\/uploads\/2025\/02\/KA-3.png"},"sameAs":["http:\/\/karwackiart.com"]}]}},"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/karwackiart.com\/index.php?rest_route=\/wp\/v2\/pages\/1625","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/karwackiart.com\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/karwackiart.com\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/karwackiart.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/karwackiart.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1625"}],"version-history":[{"count":22,"href":"https:\/\/karwackiart.com\/index.php?rest_route=\/wp\/v2\/pages\/1625\/revisions"}],"predecessor-version":[{"id":1707,"href":"https:\/\/karwackiart.com\/index.php?rest_route=\/wp\/v2\/pages\/1625\/revisions\/1707"}],"up":[{"embeddable":true,"href":"https:\/\/karwackiart.com\/index.php?rest_route=\/wp\/v2\/pages\/1405"}],"wp:attachment":[{"href":"https:\/\/karwackiart.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1625"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}