本文以三國塔防遊戲《箭塔守漢中》為例,示範如何基於 Hologres AI Function,從遊戲原始素材出發,通過 SQL 自動產生主題角色圖、廣告分鏡指令碼,並最終產生10秒廣告視頻。
背景介紹
在遊戲行業中,廣告素材生產是拉新投放和版本宣發中的核心環節。尤其在買量情境下,團隊通常需要在短時間內批量產生不同風格、不同主題、不同賣點的視頻/圖片廣告素材,用於測試點擊率、轉化率和使用者偏好。
傳統廣告製作方式主要依賴人工完成素材整理、創意策劃、海報設計、分鏡編寫和視訊剪輯,存在以下痛點:
原始素材分散:角色圖、情境圖、道具圖、遊戲介紹、賣點文案通常分散在多個系統中,難以統一管理。
創意生產效率低:每做一條廣告,都需要從頭構思主題、篩選素材、撰寫指令碼並進行視頻製作,周期較長。
多版本測試成本高:買量廣告需要進行大量 A/B Test,人工方式難以支撐高頻迭代。
投放與素材脫節:廣告素材、指令碼版本和投放效果資料之間缺少統一沉澱,難以形成最佳化閉環。
基於 Hologres AI Function,可以將遊戲原始素材管理、素材產生、廣告營銷內容產生、廣告投放效果分析串聯起來,形成一套完整的 AI 廣告視頻生產流程。
方案優勢
本方案的核心價值在於:以 Hologres 為 AI 素材生產中台,整合多模型能力,實現廣告智能素材的自動化產生。
全 SQL 鏈路:無需複雜編程,資料工程師僅通過 SQL 即可在 Hologres 中完成 AI 模型調用、素材整合和智能營銷內容產生,門檻極低。
統一管理遊戲素材:通過 Hologres 表結構統一管理遊戲的多種素材,涵蓋圖片、視頻、音頻等多模態資料,可以有效與廣告投放資料混合分析。
端到端自動化:覆蓋從角色變體、分鏡指令碼到視頻合成的全流程,實現分鐘級產出。
高效擴充性:支援多情境的廣告營銷內容批量產生,大幅提升內容生產效率和投放效率。
方案完整流程
通過 AI Function 產生遊戲廣告視頻的完整流程如下:
在 Hologres 中儲存遊戲資訊的原始物料。
利用 qwen-image 模型從元素物料產生各個主題的圖片庫。
按照提示詞,召回主題圖片,利用 qwen-max 產生分鏡指令碼。
主題圖片 + 分鏡指令碼 + wan 模型產生遊戲廣告視頻。
選擇合適的廣告視頻進行投放。
前提條件
已建立 Hologres 執行個體,且執行個體版本為 V3.2 及以上。
已在 Hologres 中部署所需的 AI 模型,包括圖片產生模型(如 qwen-image 系列)、文本產生模型(如 qwen 系列)和視頻產生模型(如 wan 系列)。部署方式詳見AI模型與部署。
已準備 OSS Bucket 用於儲存產生的圖片和視頻素材,並配置了相應的 RAM 角色授權。
步驟一:準備遊戲資訊物料表
在 Hologres 中建立一張遊戲資訊的物料表,用於儲存遊戲的基本資料和原始素材路徑。
-- 建立遊戲資訊表
CREATE TABLE game_info(
name TEXT,
intro TEXT,
motivation TEXT,
art_style TEXT,
material_list TEXT[]
);
-- 插入遊戲資訊
INSERT INTO game_info (name, intro, motivation, art_style, material_list)
VALUES (
'箭塔守漢中',
'《箭塔守漢中》是一款輕鬆休閑的三國塔防遊戲。風雲激蕩的三國時代,你將化身為一軍之帥,肩負守土之責!
遊戲方式:
1. 通過拖拽將各種防禦塔放置在預設的路徑旁。
2. 點擊升級已有的防禦塔,提升其威力。
3. 在關鍵時刻,點擊釋放武將技能,瞬間扭轉戰局。',
'策略塔防',
'扁平、中國風、簡約小人',
ARRAY[
'oss://<BucketName>/images/liubei.png',
'oss://<BucketName>/images/lvbu.png'
]
);其中 material_list 儲存了遊戲角色的原始素材圖片在 OSS 中的路徑。
素材樣本:遊戲裡真實的角色、背景等圖片。
oss://ai-demo-dataset/images/liubei.png | oss://ai-demo-dataset/images/lvbu.png |
|
|
劉備 | 呂布 |
步驟二:建立主題圖片產生提示詞表
從遊戲原始角色圖片分化出各種主題風格,用於廣告素材的產生。
-- 建立主題風格提示詞表
CREATE TABLE video_style(
name TEXT PRIMARY KEY,
prompt TEXT
);
-- 插入不同主題的提示詞
INSERT INTO video_style VALUES
('北境梟雄', '保持人物肖像不變,產生穿著身披厚重的黑色毛領金屬鎧甲,鎧甲上凝結著冰霜與戰火的痕迹。冷峻的藍調光線,史詩級電影感,細節驚人的Q版人物。'),
('雲海劍仙', '保持人物肖像不變,產生氣質儒雅的三國謀士,化身仙風道骨的劍仙。他身著月白色寬袖道袍,袍上有水墨山水的暗紋的Q版人物。'),
('幽冥夜行', '保持人物肖像不變,產生化身為神秘的暗影刺客。他身著啞光黑色的貼身夜行衣,戴著遮住半臉的面具的Q版人物。'),
('黃金鎧甲', '保持人物肖像不變,產生身穿一套極其華麗、裝飾著龍紋與珠寶的黃金鎧甲,披著猩紅色的絲綢鬥篷的Q版人物。');步驟三:產生主題圖片庫
為每個角色產生不同主題下的圖片。本例中為 2 個角色分別產生 4 個主題的圖片,調用 qwen-image-2.0-pro 模型。
-- 建立產生圖片的結果表
CREATE TABLE generated_images(
game_name TEXT,
style_name TEXT,
style_desc TEXT,
character1 TEXT,
character2 TEXT
);
-- 批量產生主題圖片並儲存結果
WITH person_prompt AS (
SELECT game_info.name AS game_name,
video_style.name AS style_name,
material_list[1] AS character1,
material_list[2] AS character2,
prompt
FROM game_info, video_style
WHERE game_info.name = '箭塔守漢中'
),
gen_image AS (
SELECT game_name, style_name, prompt AS style_desc,
ai_gen('qwen_image', json_build_object(
'prompt', prompt,
'reference_urls', array[character1],
'parameters', json_build_object(
'size', '1280*720',
'n', 1,
'watermark', false
),
'output_dir', 'oss://<BucketName>/images/'
)::text, to_file(character1, 'oss-cn-hangzhou-internal.aliyuncs.com',
'acs:ram::<AccountId>:role/<RoleName>')) AS obj1,
ai_gen('qwen_image', json_build_object(
'prompt', prompt,
'reference_urls', array[character2],
'parameters', json_build_object(
'size', '1280*720',
'n', 1,
'watermark', false
),
'output_dir', 'oss://<BucketName>/images/'
)::text, to_file(character2, 'oss-cn-hangzhou-internal.aliyuncs.com',
'acs:ram::<AccountId>:role/<RoleName>')) AS obj2
FROM person_prompt
),
image_urls AS (
SELECT game_name, style_name, style_desc,
obj1::json->'image_oss_paths' ->> 0 AS character1,
obj2::json->'image_oss_paths' ->> 0 AS character2
FROM gen_image
)
INSERT INTO generated_images SELECT * FROM image_urls;執行完成後,generated_images 表中將儲存每個角色在各個主題下的產生圖片 OSS 路徑。

劉備 | 呂布 |
|
|
|
|
|
|
|
|
步驟四:產生分鏡指令碼
將主題圖片作為視頻物料,調用大語言模型產生廣告分鏡指令碼。
-- 建立提示詞模板表
CREATE TABLE prompts (
id BIGINT,
prompt TEXT
);
-- 插入分鏡指令碼產生的提示詞模板
INSERT INTO prompts VALUES (10,
'你的任務是為手遊行業產生一份用於投放廣告的10秒視頻素材文案。
<遊戲名稱>{0}</遊戲名稱>
<遊戲介紹>{1}</遊戲介紹>
<玩家動機>{2}</玩家動機>
<遊戲畫面風格>{3}</遊戲畫面風格>
<圖片物料>{4} {5}</圖片物料>
視頻素材結構:
1. 開場2秒:選取一張圖片,顯示遊戲名稱,展示誇張特效。
2. 中段6秒:展示1個核心玩法,選取2張圖片,描述角色動作和效果。
3. 結尾2秒:所有角色登場,使用行動號召。
要求:圍繞玩家動機展開,指令碼不超過10秒,使用圖片全路徑。');使用模板產生分鏡指令碼,調用 qwen3.5-plus 模型:
-- 產生分鏡指令碼
WITH game_material AS (
SELECT * FROM game_info
LEFT JOIN generated_images ON name = game_name
WHERE game_name = '箭塔守漢中' AND style_name = '雲海劍仙'
),
tmp_prompt AS (
SELECT json_build_object(
'prompt', prompt,
'args', json_build_array(
name, intro, motivation, art_style,
to_file(character1, 'oss-cn-hangzhou-internal.aliyuncs.com',
'acs:ram::<AccountId>:role/<RoleName>'),
to_file(character2, 'oss-cn-hangzhou-internal.aliyuncs.com',
'acs:ram::<AccountId>:role/<RoleName>')
)
) AS prompt, character1, character2
FROM game_material, prompts WHERE id = 10
),
story_script AS (
SELECT ai_gen('qwen3_5_plus', prompt::text,
to_file('oss://<BucketName>/images/placeholder.png',
'oss-cn-hangzhou-internal.aliyuncs.com',
'acs:ram::<AccountId>:role/<RoleName>')) AS script,
character1, character2
FROM tmp_prompt
)
SELECT script FROM story_script;分鏡指令碼樣本:

步驟五:產生視頻
產生分鏡指令碼後,將指令碼和主題圖片傳入的視訊產生模型,產生廣告視頻。使用 wan2.6-r2v-flash 模型。
-- 產生廣告視頻(一次完成指令碼產生 + 視頻產生)
WITH game_material AS (
SELECT * FROM game_info
LEFT JOIN generated_images ON name = game_name
WHERE game_name = '箭塔守漢中' AND style_name = '雲海劍仙'
),
tmp_prompt AS (
SELECT json_build_object(
'prompt', prompt,
'args', json_build_array(
name, intro, motivation, art_style,
to_file(character1, 'oss-cn-hangzhou-internal.aliyuncs.com',
'acs:ram::<AccountId>:role/<RoleName>'),
to_file(character2, 'oss-cn-hangzhou-internal.aliyuncs.com',
'acs:ram::<AccountId>:role/<RoleName>')
)
) AS prompt, character1, character2
FROM game_material, prompts WHERE id = 10
),
story_script AS (
SELECT ai_gen('qwen3_5_plus', prompt::text,
to_file('oss://<BucketName>/images/placeholder.png',
'oss-cn-hangzhou-internal.aliyuncs.com',
'acs:ram::<AccountId>:role/<RoleName>')) AS script,
character1, character2
FROM tmp_prompt
)
SELECT character1, character2,
ai_gen('wan_26_r2v_flash', json_build_object(
'prompt', script,
'reference_urls', array[character1, character2],
'parameters', json_build_object(
'size', '1280*720',
'duration', 10,
'shot_type', 'multi',
'audio', true,
'watermark', true
),
'output_dir', 'oss://<BucketName>/videos/'
)::text,
to_file('oss://<BucketName>/images/placeholder.png',
'oss-cn-hangzhou-internal.aliyuncs.com',
'acs:ram::<AccountId>:role/<RoleName>')) AS video_result,
script
FROM story_script;執行完成後,返回結果中的 video_url 欄位即為產生的廣告視頻地址,同時視頻也會儲存至指定的 OSS 目錄中。
步驟六:產生視頻效果預覽
產生的視頻:
北境梟雄
雲海劍仙









