{"id":2491,"date":"2026-03-27T13:43:09","date_gmt":"2026-03-27T04:43:09","guid":{"rendered":"https:\/\/yukun-unreal.com\/?p=2491"},"modified":"2026-03-27T13:43:11","modified_gmt":"2026-03-27T04:43:11","slug":"%e3%80%90unrealengine%e3%80%91%e5%86%86%e9%81%8b%e5%8b%95%e3%82%92%e3%81%99%e3%82%8b%e3%82%a2%e3%82%af%e3%82%bf%e3%82%92c%e3%81%a7%e4%bd%9c%e6%88%90%e3%81%99%e3%82%8b","status":"publish","type":"post","link":"https:\/\/yukun-unreal.com\/?p=2491","title":{"rendered":"\u3010UnrealEngine\u3011\u5186\u904b\u52d5\u3092\u3059\u308b\u30a2\u30af\u30bf\u3092C++\u3067\u4f5c\u6210\u3059\u308b"},"content":{"rendered":"\n<p>C++\u3067\u5186\u904b\u52d5\u3092\u3059\u308b\u30a2\u30af\u30bf\u3092\u4f5c\u6210\u3057\u3066\u307f\u305f\u306e\u3067\u3001\u30b3\u30fc\u30c9\u3092\u6b8b\u3057\u3066\u304a\u3053\u3046\u3068\u601d\u3044\u307e\u3059\u3002<\/p>\n\n\n\n<figure class=\"wp-block-video\"><video height=\"1080\" style=\"aspect-ratio: 1920 \/ 1080;\" width=\"1920\" controls src=\"https:\/\/yukun-unreal.com\/wp-content\/uploads\/2026\/03\/\u56de\u308b\u30a2\u30af\u30bf.mov\"><\/video><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<!DOCTYPE html>\n<html lang=\"ja\">\n\n<head>\n<meta charset=\"UTF-8\">\n<title>\u30b3\u30fc\u30c9\u30b5\u30f3\u30d7\u30eb<\/title>\n\n<!-- highlight.js -->\n<link rel=\"stylesheet\"\nhref=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/highlight.js\/11.9.0\/styles\/github-dark.min.css\">\n\n<script src=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/highlight.js\/11.9.0\/highlight.min.js\"><\/script>\n\n<script>\ndocument.addEventListener(\"DOMContentLoaded\", () => {\n    hljs.highlightAll();\n});\n\n\/* \u30b3\u30d4\u30fc\u6a5f\u80fd *\/\nfunction copyCode(button){\n\n    const code = button.closest(\".code-box\").querySelector(\"code\").innerText;\n\n    navigator.clipboard.writeText(code);\n\n    button.innerText = \"\u30b3\u30d4\u30fc\u5b8c\u4e86\";\n\n    setTimeout(()=>{\n        button.innerText = \"\u30b3\u30d4\u30fc\";\n    },2000);\n}\n<\/script>\n\n<style>\n\nbody{\n    background:#0f172a;\n    color:white;\n    font-family:Arial;\n    padding:40px;\n    margin:0;\n}\n\n\/* \u30bf\u30a4\u30c8\u30eb *\/\nh1{\n    margin-bottom:20px;\n}\n\n\/* \u30b3\u30fc\u30c9\u30dc\u30c3\u30af\u30b9 *\/\n.code-box{\n\n    width:100%;\n    max-width:1200px;\n\n    background:#111827;\n\n    border-radius:10px;\n\n    box-shadow:0 10px 25px rgba(0,0,0,0.5);\n\n    overflow:hidden;\n\n    margin-bottom:40px;\n}\n\n\/* \u30d8\u30c3\u30c0\u30fc *\/\n.code-header{\n\n    display:flex;\n\n    justify-content:space-between;\n\n    align-items:center;\n\n    padding:12px 16px;\n\n    background:#1f2937;\n}\n\n\/* \u30bf\u30a4\u30c8\u30eb *\/\n.code-title{\n\n    color:#38bdf8;\n\n    font-size:16px;\n}\n\n\/* \u30b3\u30d4\u30fc *\/\n.copy-btn{\n\n    background:#2563eb;\n\n    border:none;\n\n    color:white;\n\n    padding:6px 12px;\n\n    border-radius:6px;\n\n    cursor:pointer;\n}\n\n.copy-btn:hover{\n\n    background:#1d4ed8;\n}\n\n\/* \u30b3\u30fc\u30c9\u90e8\u5206 *\/\npre{\n\n    margin:0;\n\n    padding:20px;\n\n    width:100%;\n\n    overflow-x:auto;\n}\n\n\/* \u30b3\u30fc\u30c9 *\/\ncode{\n\n    display:block;\n\n    min-width:600px;\n}\n\n<\/style>\n\n<\/head>\n\n<body>\n\n<h1>\u30d8\u30c3\u30c0\u30fc\u30d5\u30a1\u30a4\u30eb<\/h1>\n\n<div class=\"code-box\">\n\n<div class=\"code-header\">\n\n<div class=\"code-title\">\u5909\u6570\u3092\u4f5c\u6210\u3057\u3066\u304a\u304f<\/div>\n\n<button class=\"copy-btn\" onclick=\"copyCode(this)\">\n\u30b3\u30d4\u30fc\n<\/button>\n\n<\/div>\n\n<pre><code class=\"language-cpp\">\n\n\n\n\/\/ Fill out your copyright notice in the Description page of Project Settings.\n\n#pragma once\n\n#include \"CoreMinimal.h\"\n#include \"GameFramework\/Actor.h\"\n#include \"TimeTestActor.generated.h\"\n\nUCLASS()\nclass CREATEACTOR_API ATimeTestActor : public AActor\n{\n\tGENERATED_BODY()\n\t\npublic:\t\n\t\/\/ Sets default values for this actor's properties\n\tATimeTestActor();\n\n\tFVector StartLocation;\n\tfloat RunTime;\n\n\tUPROPERTY(EditAnywhere, Category=\"Move\")\n\tfloat MoveSpeed = 1.0f;\n\n\tUPROPERTY(EditAnywhere, Category = \"Move\")\n\tfloat MoveRadius = 200.0f;\n\n\nprotected:\n\t\/\/ Called when the game starts or when spawned\n\tvirtual void BeginPlay() override;\n\npublic:\t\n\t\/\/ Called every frame\n\tvirtual void Tick(float DeltaTime) override;\n\n};\n\n<\/code><\/pre>\n\n<\/div>\n\n<\/body>\n<\/html>\n\n\n\n<p><\/p>\n\n\n\n<!DOCTYPE html>\n<html lang=\"ja\">\n\n<head>\n<meta charset=\"UTF-8\">\n<title>\u30b3\u30fc\u30c9\u30b5\u30f3\u30d7\u30eb<\/title>\n\n<!-- highlight.js -->\n<link rel=\"stylesheet\"\nhref=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/highlight.js\/11.9.0\/styles\/github-dark.min.css\">\n\n<script src=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/highlight.js\/11.9.0\/highlight.min.js\"><\/script>\n\n<script>\ndocument.addEventListener(\"DOMContentLoaded\", () => {\n    hljs.highlightAll();\n});\n\n\/* \u30b3\u30d4\u30fc\u6a5f\u80fd *\/\nfunction copyCode(button){\n\n    const code = button.closest(\".code-box\").querySelector(\"code\").innerText;\n\n    navigator.clipboard.writeText(code);\n\n    button.innerText = \"\u30b3\u30d4\u30fc\u5b8c\u4e86\";\n\n    setTimeout(()=>{\n        button.innerText = \"\u30b3\u30d4\u30fc\";\n    },2000);\n}\n<\/script>\n\n<style>\n\nbody{\n    background:#0f172a;\n    color:white;\n    font-family:Arial;\n    padding:40px;\n    margin:0;\n}\n\n\/* \u30bf\u30a4\u30c8\u30eb *\/\nh1{\n    margin-bottom:20px;\n}\n\n\/* \u30b3\u30fc\u30c9\u30dc\u30c3\u30af\u30b9 *\/\n.code-box{\n\n    width:100%;\n    max-width:1200px;\n\n    background:#111827;\n\n    border-radius:10px;\n\n    box-shadow:0 10px 25px rgba(0,0,0,0.5);\n\n    overflow:hidden;\n\n    margin-bottom:40px;\n}\n\n\/* \u30d8\u30c3\u30c0\u30fc *\/\n.code-header{\n\n    display:flex;\n\n    justify-content:space-between;\n\n    align-items:center;\n\n    padding:12px 16px;\n\n    background:#1f2937;\n}\n\n\/* \u30bf\u30a4\u30c8\u30eb *\/\n.code-title{\n\n    color:#38bdf8;\n\n    font-size:16px;\n}\n\n\/* \u30b3\u30d4\u30fc *\/\n.copy-btn{\n\n    background:#2563eb;\n\n    border:none;\n\n    color:white;\n\n    padding:6px 12px;\n\n    border-radius:6px;\n\n    cursor:pointer;\n}\n\n.copy-btn:hover{\n\n    background:#1d4ed8;\n}\n\n\/* \u30b3\u30fc\u30c9\u90e8\u5206 *\/\npre{\n\n    margin:0;\n\n    padding:20px;\n\n    width:100%;\n\n    overflow-x:auto;\n}\n\n\/* \u30b3\u30fc\u30c9 *\/\ncode{\n\n    display:block;\n\n    min-width:600px;\n}\n\n<\/style>\n\n<\/head>\n\n<body>\n\n<h1>\u30bd\u30fc\u30b9\u30d5\u30a1\u30a4\u30eb<\/h1>\n\n<div class=\"code-box\">\n\n<div class=\"code-header\">\n\n<div class=\"code-title\">Sin\u3068Cos\u3067\u5186\u904b\u52d5\u3092\u3055\u305b\u308b<\/div>\n\n<button class=\"copy-btn\" onclick=\"copyCode(this)\">\n\u30b3\u30d4\u30fc\n<\/button>\n\n<\/div>\n\n<pre><code class=\"language-cpp\">\n\n\n\n\/\/ Fill out your copyright notice in the Description page of Project Settings.\n\n\n#include \"TimeTestActor.h\"\n\n\/\/ Sets default values\nATimeTestActor::ATimeTestActor()\n{\n \t\/\/ Set this actor to call Tick() every frame.  You can turn this off to improve performance if you don't need it.\n\tPrimaryActorTick.bCanEverTick = true;\n\n}\n\n\/\/ Called when the game starts or when spawned\nvoid ATimeTestActor::BeginPlay()\n{\n\tSuper::BeginPlay();\n\n\tStartLocation = GetActorLocation();\n\tRunTime = 0.0f;\n\n}\n\n\/\/ Called every frame\nvoid ATimeTestActor::Tick(float DeltaTime)\n{\n\tSuper::Tick(DeltaTime);\n\n\tRunTime += DeltaTime;\n\n\tfloat X = FMath::Sin(RunTime * MoveSpeed) * MoveRadius;\n\tfloat Y = FMath::Cos(RunTime * MoveSpeed) * MoveRadius;\n\n\tFVector NewLocation = StartLocation;\n\n\tNewLocation.X += X;\n\tNewLocation.Y += Y;\n\n\tSetActorLocation(NewLocation);\n\n}\n\n\n\n<\/code><\/pre>\n\n<\/div>\n\n<\/body>\n<\/html>\n\n\n\n<p><\/p>\n\n\n\n<p>\u4e0a\u8a18\u30b3\u30fc\u30c9\u3092\u8a18\u8ff0\u3057\u30b2\u30fc\u30e0\u5185\u306b\u914d\u7f6e\u3059\u308b\u3068\u52d5\u753b\u3068\u540c\u69d8\u306e\u5186\u904b\u52d5\u3092\u3059\u308b\u30a2\u30af\u30bf\u3092\u4f5c\u6210\u3067\u304d\u305f\u306f\u305a\u3067\u3059\u3002<\/p>\n\n\n\n<p>Sin\u3068Cos\u304c\u4f55\u3092\u3057\u3066\u3044\u308b\u306e\u304b\u3092\u7406\u89e3\u3067\u304d\u308b\u5186\u904b\u52d5\u3092\u4f5c\u6210\u3059\u308b\u306e\u306f\u305d\u3053\u307e\u3067\u96e3\u3057\u304f\u306a\u3044\u306a\u3068\u3044\u3046\u5370\u8c61\u3067\u3057\u305f\uff01<\/p>\n\n\n\n<p>\u8ef8\u3092\u5909\u66f4\u3059\u308b\u3068\u56de\u308b\u65b9\u5411\u3092\u8abf\u6574\u3059\u308b\u3053\u3068\u3082\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p><\/p>\n\n\n\n<figure class=\"wp-block-video\"><video height=\"1080\" style=\"aspect-ratio: 1920 \/ 1080;\" width=\"1920\" controls src=\"https:\/\/yukun-unreal.com\/wp-content\/uploads\/2026\/03\/\u56de\u308b\u30a2\u30af\u30bf\uff08\u4e0a\u4e0b\uff09.mov\"><\/video><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p>NewLocation\u5909\u6570\u306eX,Y\u3092Y,Z\u306b\u5909\u66f4\u3059\u308b\u3060\u3051\u3067\u3059\u3002<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p id=\"block-c9b40551-6534-4d63-a34d-ac235983ea6a\"><strong>\u25c6YouTube<\/strong><br><a href=\"https:\/\/www.youtube.com\/@yu-kun\">\u3086\u3046tuber\u30fb\u3086\u3046\u304f\u3093 &#8211; YouTube<\/a><\/p>\n\n\n\n<p id=\"block-4a493c32-b169-4040-9bb6-33b69c9b62a7\"><\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-wp-embed is-provider-unrealengine wp-block-embed-unrealengine\"><div class=\"wp-block-embed__wrapper\">\n<blockquote class=\"wp-embedded-content\" data-secret=\"pcM53ML91H\"><a href=\"https:\/\/yukun-unreal.com\/?p=2380\">\u3010UnrealEngine\u3011.h\u3068.cpp\u30d5\u30a1\u30a4\u30eb\u306b\u3064\u3044\u3066\u3010C++\u3011<\/a><\/blockquote><iframe class=\"wp-embedded-content\" sandbox=\"allow-scripts\" security=\"restricted\" style=\"position: absolute; visibility: hidden;\" title=\"&#8220;\u3010UnrealEngine\u3011.h\u3068.cpp\u30d5\u30a1\u30a4\u30eb\u306b\u3064\u3044\u3066\u3010C++\u3011&#8221; &#8212; UnrealEngine\u3067\u30b2\u30fc\u30e0\u5236\u4f5c\" src=\"https:\/\/yukun-unreal.com\/?p=2380&#038;embed=true#?secret=o6MbOjCV4N#?secret=pcM53ML91H\" data-secret=\"pcM53ML91H\" width=\"600\" height=\"338\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\"><\/iframe>\n<\/div><\/figure>\n\n\n\n<figure class=\"wp-block-embed is-type-wp-embed is-provider-unrealengine wp-block-embed-unrealengine\"><div class=\"wp-block-embed__wrapper\">\n<blockquote class=\"wp-embedded-content\" data-secret=\"WnqVUkzcXr\"><a href=\"https:\/\/yukun-unreal.com\/?p=2416\">\u3010UnrealEngine\u3011C++\u306e\u5909\u6570\u3092\u7406\u89e3\u3057\u3088\u3046\uff01<\/a><\/blockquote><iframe class=\"wp-embedded-content\" sandbox=\"allow-scripts\" security=\"restricted\" style=\"position: absolute; visibility: hidden;\" title=\"&#8220;\u3010UnrealEngine\u3011C++\u306e\u5909\u6570\u3092\u7406\u89e3\u3057\u3088\u3046\uff01&#8221; &#8212; UnrealEngine\u3067\u30b2\u30fc\u30e0\u5236\u4f5c\" src=\"https:\/\/yukun-unreal.com\/?p=2416&#038;embed=true#?secret=ZtPZXQa7Y8#?secret=WnqVUkzcXr\" data-secret=\"WnqVUkzcXr\" width=\"600\" height=\"338\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\"><\/iframe>\n<\/div><\/figure>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>C++\u3067\u5186\u904b\u52d5\u3092\u3059\u308b\u30a2\u30af\u30bf\u3092\u4f5c\u6210\u3057\u3066\u307f\u305f\u306e\u3067\u3001\u30b3\u30fc\u30c9\u3092\u6b8b\u3057\u3066\u304a\u3053\u3046\u3068\u601d<\/p>\n<p><a href=\"https:\/\/yukun-unreal.com\/?p=2491\" class=\"awp-btn awp-btn-secondary\">Continue Reading<span class=\"screen-reader-text\">\u3010UnrealEngine\u3011\u5186\u904b\u52d5\u3092\u3059\u308b\u30a2\u30af\u30bf\u3092C++\u3067\u4f5c\u6210\u3059\u308b<\/span><i class=\"fa fa-arrow-right\"><\/i><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[628,28],"tags":[649,629,655,656,16,17,11,5,648,27,25,9,15,657],"class_list":["post-2491","post","type-post","status-publish","format-standard","hentry","category-c","category-tutorial","tag-actor","tag-c","tag-cos","tag-sin","tag-tutorial","tag-ue","tag-ue5","tag-unrealengine","tag-648","tag-27","tag-25","tag-9","tag-15","tag-657"],"aioseo_notices":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/yukun-unreal.com\/index.php?rest_route=\/wp\/v2\/posts\/2491","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/yukun-unreal.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/yukun-unreal.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/yukun-unreal.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/yukun-unreal.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2491"}],"version-history":[{"count":2,"href":"https:\/\/yukun-unreal.com\/index.php?rest_route=\/wp\/v2\/posts\/2491\/revisions"}],"predecessor-version":[{"id":2495,"href":"https:\/\/yukun-unreal.com\/index.php?rest_route=\/wp\/v2\/posts\/2491\/revisions\/2495"}],"wp:attachment":[{"href":"https:\/\/yukun-unreal.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2491"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/yukun-unreal.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2491"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/yukun-unreal.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2491"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}