投稿者: manualmaton Page 1 of 269

ノートの飾り付け。

100均(セリア)でノートを買おうとした中で見つけました。

ノートの表紙に貼り付けるためのエンボスシールです。

光沢ありのエンボスシールを角に貼っていくことで、

100均のノートが少し高級な感じに。

元々あったプラカバーと合わせることで、更に表紙を引き立ててくれました。

ユースケース:PHP-FPMプール設定引き上げによるNextcloudのレスポンス改善

環境

  • Nextcloud 31系
  • PHP 8.3
    • PHP-FPM 8.3
  • Redis / APCUなどによる
  • Apache 2.4
  • Ubuntu 24.04
  • MySQL 8
  • メモリ6GB
  • 4 core CPU

事象

Nextcloud Talkを含めたレスポンスが非常に悪いという状況。具体的には

  • トップページがなかなかロードされない。
  • 各画面の遷移状態が悪い。
  • 画像をクリックしても表示に時間がかかる。(分単位であることも)

free -hでもメモリ圧迫という様子を見せず、topをたたいても異常なし。

何よりも、同一サーバに同居する

  • Growi
  • Redmine
  • BookStack

などが正常に動いていて、これらはレスポンスも良好。サーバの性能ではなく、サーバ以外のところに原因があると考え、調査開始です。

原因究明

答えは/var/log配下のphp8.3-fpm.logに現れていました。

[04-Oct-2025 17:32:36] WARNING: [pool www] server reached pm.max_children setting (5), consider raising it
[04-Oct-2025 18:45:55] WARNING: [pool www] server reached pm.max_children setting (5), consider raising it
[04-Oct-2025 21:28:57] WARNING: [pool www] server reached pm.max_children setting (5), consider raising it

これにより、PHPのリクエストを処理するワーカープロセスの数が上限(5)に達し、リクエストが滞留していることがパフォーマンス低下の直接的な原因だと特定しました。

これが分かれば、後は実際の対処です。

事象改善:さっくりとした手順

  1. PHP-FPMのプール設定ファイルのバックアップを取ります。
  2. 設定ファイルを編集してワーカープロセスの上限数や他の関連する値を引き上げます。
  3. 設定ファイルを反映させるため、各種サービスを再起動します。
  4. 事象の解決を確認します。

設定ファイルのバックアップ

  • ファイルバックアップ
sudo cp -pi /etc/php/8.3/fpm/pool.d/www.conf /path/to/backup/directory/www.conf.$(date +%Y%m%d)

※php-fpmの設定値は、入れているPHPのバージョンによって異なります。自分の環境に合わせたものに修正してください。

 → /home/hoge/backupなど、任意のバックアップディレクトリを指定します。

  • ファイルバックアップ確認
diff -u /path/to/backup/directory/www.conf.$(date +%Y%m%d) /etc/php/8.3/fpm/pool.d/www.conf

 → エラーがなければバックアップが取れています。

備考:なぜdiffを用いてバックアップの確認をするのか?

  • ls -lよりも確実に、元ファイルとバックアップファイルがあるか「両方のファイル」で確認を取るため。
  • 編集後、「どのような編集を行ったのか?」を同じコマンドで確認を取る。
    • 「バックアップ」-「設定ファイル」の順番とすることで、後のdiffの編集を行った、追記を行った箇所が+で表示されます。(同様に削った箇所が-で表示)

特に、設定ファイルの修正は非常にデリケートな問題であり、下手な設定がサーバ全体のシステムダウンを引き起こします。このため、変更管理や後のトラブルの追跡を兼ねてのバックアップはサーバメンテナンスの黄金律として体に覚え込ませましょう。

ファイルの修正

  • ファイルの修正

上記、バックアップを取った後の 元ファイル /etc/php/8.3/fpm/pool.d/www.conf を、管理者権限で、自身の教義・信仰に基づいたエディタで修正します。

こちらの設定値は、aptなどでのパッケージ管理システムでのインストールであれば、

pm.max_children = 5
pm.start_servers = 2
pm.min_spare_servers = 1
pm.max_spare_servers = 3

となっていることが多いです。これを、以下のように修正しましょう。

pm.max_children = 15
pm.start_servers = 4
pm.min_spare_servers = 2
pm.max_spare_servers = 6

※ サーバ環境などにより、随時、修正を行ってください。

修正後、保存を行います。

  • diffによる差分確認
diff -u /path/to/backup/directory/www.conf.$(date +%Y%m%d) /etc/php/8.3/fpm/pool.d/www.conf

以下のような差分を確認します。

; Note: This value is mandatory.
-pm.max_children = 5
+pm.max_children = 15

 ; The number of child processes created on startup.
 ; Note: Used only when pm is set to 'dynamic'
 ; Default Value: (min_spare_servers + max_spare_servers) / 2
-pm.start_servers = 2
+pm.start_servers = 4
 ; The desired minimum number of idle server processes.
 ; Note: Used only when pm is set to 'dynamic'
 ; Note: Mandatory when pm is set to 'dynamic'
-pm.min_spare_servers = 1
+pm.min_spare_servers = 2
 ; The desired maximum number of idle server processes.
 ; Note: Used only when pm is set to 'dynamic'
 ; Note: Mandatory when pm is set to 'dynamic'
-pm.max_spare_servers = 3
+pm.max_spare_servers = 6 
 ; The number of rate to spawn child processes at once.
 ; Note: Used only when pm is set to 'dynamic' 

このように、修正前が-の行、修正後が+の行で修正されていることが分かります。この数値や設定以上に重要なのは「変なスペースや意図した設定以外の情報が含まれていないか?」を、自分の修正した記憶を頼りにすることではなく、コマンドという絶対的な第三者の目で確認することです。

設定反映

PHP-FPMだけでなく、前段のApacheもサービス再起動を行います。

  • Apacheサービス再起動
sudo systemctl restart apache2.service
  • Apacheサービス再起動後確認
systemctl status apache2.service

active(running)を確認します。

  • PHP-FPMサービス再起動
sudo systemctl restart php8.3-fpm.service
  • PHP-FPMサービス再起動後確認
systemctl status php8.3-fpm.service

active(running)を確認します。

事象改善確認

再びNextcloudにアクセスし、事象が改善したことを確認できれば設定完了です。

余談:なぜこの事象が起きたか?

Nextcloudの利用頻度が高まったからに尽きます。Talkをスマートフォンアプリでも利用したり、データが増えたことで、PHP-FPMの処理能力が追いつかなかったのでしょう。

利用状況に合わせて、ボトルネックを特定し、修正を加えて改善を施していくというのもまた、サーバ運用の苦しくも楽しいところです。

iPhoneAIR カメラ検証(葛西臨海水族園)

6年ぶりの機種変更を行ったiPhone。そのカメラのベンチマークとして、様々な光がある葛西臨海水族園での検証です。

以前の11Proから広角機能がなくなったものの、どこまで撮影できるのかを確認

水槽

より詳細に、動きのある魚や光をきちんと捉えていると、これだけでも技術の進歩を感じます。

外観

秋雲やドームなどの描写もバッチリ。広角を用いるまでもなく広がりが撮れるのは満足しました。

食べ物

これはマクロが弱くなってるのは否めません。しかし、パンフォーカス気味で詳細に撮影できるのは好印象でした。

結論: 第一印象は極めて満足

  • 水槽の複雑な反射
  • 標準レンズでもダイナミックな構図
  • 食べ物の全域の撮影

など、日常的に使うのは全く問題ありません。これからの相棒としての活躍に期待です。

RedmineViewCustomizeプラグインを利用して、ナレッジベースのキャッチ画像を別画面で出す。

プロジェクトのナレッジベースプラグインのアイキャッチをクリックした際、添付画像に直接飛ぶView Customizeの設定です。

ここの画像をクリックすることで、

この添付ファイル画像へと飛びます。

前提

  • ReddmineにViewCustomizeプラグインがはいっていること。
  • これを触ることができる権限を持っていること。
  • knowledgebaseプラグインが入っていること。

ViewCustomizeで新たな表示設定を追加

  1. Redmineに管理者権限でログインします。
  2. 管理>表示のカスタマイズへ進みます。

以下のようにして新しい表示を追加します。

  • パスのパターン
    • /projects/[^/]+/knowledgebase/articlesと、ナレッジベースの機器一覧を設定
  • プロジェクトパターン
    • 空白
  • 挿入ページ
    • 全ページのヘッダ
  • 種別
    • JavaScript
  • コード

以下のように入力。

$(function() {
  // Knowledgebase記事一覧内のサムネイルのコンテナを対象とする
  $('.article-list-thumbnail').each(function() {
    var $container = $(this);
    var $img = $container.find('img');
    var originalSrc = $img.attr('src');

    // サムネイルのURLをフルサイズ画像のURLに変換
    // 例: /attachments/thumbnail/946  ->  /attachments/946
    if (originalSrc && originalSrc.includes('/attachments/thumbnail/')) {
      var fullSizeSrc = originalSrc.replace('/attachments/thumbnail/', '/attachments/');

      // <a>タグを作成し、サムネイル画像を囲む
      var $link = $('<a>')
        .attr('href', fullSizeSrc)
        .attr('target', '_blank') // 新しいタブで開く
        .addClass('knowledgebase-zoom-link'); // 独自のクラスを追加 (後でLightboxプラグインと連携する際などに便利)

      // 画像をリンクで置き換える
      $img.wrap($link);

      // (オプション) カーソルをポインターに変更し、クリック可能であることを示す
      $img.css('cursor', 'pointer');
    }
  });
});
  • コメント
    • knowlegebaseのアイコンをクリック時に添付を表示するなど

これを有効にして保存。

設定確認

設定したRedmineサイトの任意のナレッジベースにアクセス。
上記のように、一覧の画像をクリックして添付ファイルが開けば設定完了です。

BookStack、キャッチ画像の一新。

別で出しているBookStack。(一部の維持は連動しています)

https://barrel.reisalin.com

こちら、nano bananaの画像生勢力により、サイトのイメージを

この状態から

こちらへと変更。このように、ブログとの共通バナーを置いた次第です。

プロンプトは以下の通り
Japanese anime / manga style illustration, (maximum moe-style:1.7), (ultra-detailed:1.6), (dramatic contrast between traditional Japanese study room and holographic terminal commands:1.5), (a giant, aged scroll (Makimono) unrolled, with neon-green shell script flowing across its surface:1.6), (atmospheric illumination from the flowing script and floating "$ " prompts:1.4), (standard lens perspective:1.3), (smooth, natural visual composition:1.2), 16:9, widescreen

THRUST_WEIGHT = 1.7 // Thigh emphasis weight for "Stable Foundation of Automation" (1.5 - 2.0 recommended)

// CORE VARIABLES (Optimized for Shell Script Makimono)
HAIR_COLOR = (Matte, deep charcoal or sleek jet black, styled with elegant, traditional rope braids:1.5) // Traditional yet structured.
HAIR_ACCENT = (Kanzashi designed as a delicate, glowing '$ ' (prompt symbol) icon and a miniature sealing stamp:1.7), (Thin pure white and neon-green braided cord decoration:1.4).
GLASSES_STYLE = (Thin, antique metallic-rimmed glasses, reflecting the complex, flowing script logic:1.6) // Glasses for deep analysis.
OUTFIT_BASE_COLOR = (Structured, deep matte indigo or black Kimono-inspired functional wear:1.5) // Elegant and non-distracting color.
EMBROIDERY_COLOR = Neon-green and vibrant orange (CUI commands and variable names:1.4).
HOSIERY_COLOR = Sheer matte black or opaque deep indigo (smooth, functional texture, with subtle glowing lines resembling command pipes:1.6) // Pipe/Flow lines.

// CONSTRAINT & FOCUS (Filter Mitigation & Execution Focus)
Constraint: (Healthy and dignified, intellectual and deeply focused aesthetic only:1.5), (No offensive or sexually explicit content:1.5), (Focus on automation flow and scripting mastery:1.5).
Focus: (Maximum emphasis on the glowing script text on the scroll:1.8), (Fingers delicately touching the scroll, suggesting script execution:1.6), (The elegant, powerful curve of the upper thighs as a stable base for the command flow:THRUST_WEIGHT).

---

// **LETTERING (Shell Script Title - Execution Command)**
(Large, powerful, and perfectly aligned lettering of the words 'Shell Script' projected as glowing, neon-green commands directly over the center of the unrolled Makimono scroll:1.7), (Strict, mono-spaced terminal font, suggesting code precision and execution integrity:1.5), (The letters feature subtle internal segments that resemble pipe operators '|' and glowing '$' prompt symbols at the start of the word, all in neon green:1.6), (Holographic projection effect with sharp, clean edges and intense neon-green internal illumination, contrasting with the parchment texture:1.5), (Intensely illuminated by its own neon-green light, casting sharp, digital-looking reflections onto the aged parchment and the character's clothing:1.4)

---

// PERSPECTIVE, COMPOSITION, & POSE (Filter Safe & Execution Focus)
Perspective: (Medium-low angle perspective:1.5), emphasizing the grandeur of the unrolled scroll.
Framing: (Full body visible, seated in front of a low, sturdy wooden desk/platform:1.4), (**Framed by the subtle texture of a traditional shoji screen and the ancient wooden desk:1.3**).
PoseAction: (**Seated in a calm, focused posture (正座 or 片膝立ち), both hands gently holding the edges of the unrolled giant Makimono:1.7**), (**One finger or a traditional brush hovering over a glowing line of code, suggesting activation or modification:1.6**). // Scripting/Chanting pose.
Expression: (Intense concentration, a calm yet satisfied gaze as the script logic unfolds:1.5).

---

// SETTING & CYBER DETAILS
Location: (**A quiet, traditional Japanese study room (書斎) with a low, dark wooden desk:1.5**), (**The air is filled with subtle, swirling smoke or vapor, suggesting powerful computation:1.6**).
Decorations: (**A massive, aged parchment scroll unrolled, filled with glowing neon-green and orange shell script commands:1.7**), (**Holographic '$ ' prompts floating in the air like dust motes:1.5**), (A traditional inkstone and brush (筆) resting nearby:1.4).
Atmosphere: (Mysterious, powerful, and deeply focused, the magic of automation:1.2).
Details: (**The intense neon light from the script reflects dramatically off the character's face and the glossy hosiery:1.7**), (The contrast between the fragile parchment/wood and the powerful digital light:1.5).

---

// OUTFIT & ACCESSORIES (Automation Modules)
Outfit: (Kimono-inspired functional scholar's robes:1.4) (base=**OUTFIT_BASE_COLOR**, embroidery color=**EMBROIDERY_COLOR**, motif=flowing script/logic gates), (clean, structured, and matte texture:1.5).
Leg Wear: (**HOSIERY_COLOR** tights/leggings with subtle, pipe-like seams:1.6), (modular thigh strap designed as a scroll tie/seal, with a glowing 'for loop' icon charm:1.5).
Accessories: Minimalist choker designed as a logic gate circuit:1.3, A small, portable, clear glass sphere containing a perfectly ordered 'history' log:1.5.

---

// NEGATIVE PROMPTS (General)
(extra fingers:1.8), (fewer fingers:1.8), (malformed hands:1.8), (extra limbs:1.8), (mutated hands:1.8), (bad anatomy:1.5), (disfigured:1.5), (ugly:1.5), (deformed:1.5), (blurry:1.3), (duplicate:1.3), (morbid:1.2), (mutilated:1.2), (out of frame:1.2), (bad proportion:1.2), (bad quality:1.2), (overly sensual:1.5), (crotch_focus:1.5), (nipples:1.5), (vagina:1.5), (too much skin:1.5).

これで、より、自サイトの統一感が保たせられるようになりました。

WindowsPowershellを利用したpngファイルのコンバート(初案)。

細かいところに手が届くWindowsPowershell。

その例として、「特定のフォルダにあるpngファイルをjpgにコンバートする」をメモします。

  • convert.ps1
# 変換対象のフォルダを指定
$folderPath = "C:\Users\hoge\fuga\photo"

# System.Drawing を使うためにアセンブリを読み込む
Add-Type -AssemblyName System.Drawing

# PNGファイルを取得
$pngFiles = Get-ChildItem -Path $folderPath -Filter *.png

foreach ($file in $pngFiles) {
    # 画像を読み込む
    $image = [System.Drawing.Image]::FromFile($file.FullName)

    # 出力ファイル名(拡張子を .jpg に変更)
    $jpgPath = [System.IO.Path]::ChangeExtension($file.FullName, "jpg")

    # JPEGエンコーダを取得
    $jpgEncoder = [System.Drawing.Imaging.ImageCodecInfo]::GetImageEncoders() | Where-Object { $_.MimeType -eq "image/jpeg" }

    # エンコードパラメータ(品質指定:90)
    $encoderParams = New-Object System.Drawing.Imaging.EncoderParameters(1)
    $qualityParam = New-Object System.Drawing.Imaging.EncoderParameter([System.Drawing.Imaging.Encoder]::Quality, 90L)
    $encoderParams.Param[0] = $qualityParam

    # JPGとして保存
    $image.Save($jpgPath, $jpgEncoder, $encoderParams)

    # メモリ解放
    $image.Dispose()
}

適当な手段で上記を作成し、このスクリプトをPowershellで走らせます。

  1. フォルダ内にある.pngを読み込みます。
  2. 解像度はそのまま、jpgに圧縮します。
  3. 変数で指定したフォルダに、名前をそのままにして出力します。

これはあくまでも「こういうことができた」という例なので、

  • ドラッグ&ドロップに対応
  • 出力先を別にする
  • 変換後のファイルに別の名前を付与する

など、調整のしがいがあります。

旅先で用いた文具。

前回の温泉旅行から1年以上曲田って言うということもあり、いくつかの“文具”に若干のアップデートがありました。

ノートPC ThinkPad

これが一番の違いです。軽く、頑丈なこれはとても中古で買ったとは思えないパフォーマンスを見せていました。

また、バッテリーの持ちもいいので、家族と話しながらでも活躍です。

モバイルバッテリー

ノートPCにもチャージできる大容量モデルが活きました。歩行中などに充電切れとなったiPadなどをチャージしてタイムロスを防ぎます。

iPad mini

これは続投。片手で持ててペンにより入力が容易と、場所を選ばない万能器具です。

手帳類

今回は残念ながらあまり使わず。PC作業の方に夢中だったからです。なので、日記もまとめてやるというていたらく。

MVP:iPhone AIR

なんといってもこの機種変したiPhoneAIR。

  • より長いバッテリー
  • 高速なレスポンス
  • カメラアプリへの一発の起動

など、今までで難点だった改善点が多数含まれていました。また、マスクありでもFace IDが使えるというのもありがたいです。

手帳との出会い。「トラベラーズノート」購入。

谷川岳に訪れたとき。

コインロッカーの小銭がなかったのでお札を崩そうと言う形でお土産物屋に訪れたときに、それを見つけました。

トラベラーズノート、星野リゾートコラボ。このトラベラーズノート自身は知ってはいたものの、手に取ることがなかった製品、しかし、サンプルを手に取って、まさにこんな形で

「これだ!」という顔になりました。

しかも、1万円で支払えばコインロッカーの料金まで支払えます。

そうして、宿で開封と相成りました。

内容物はシンプル。

  • 革の本体(ゴムストラップの留め具)
  • ノート、無地
  • 呼びのバンド
  • 収納袋

ぐらいです。ですが、そのシンプルな味わいが逆にいい味を出しています。

宿でも記念撮影をしたほど。

また、リフィルの書き心地も上々なので、これを元に何を記録していくかがワクワクでした。

夏休みの旅行:谷川岳、湯桧曽。

今年も遅くに行ってきました。

谷川岳。トップシーズンではないため、客も少なめ。

そして、今回初めての試みとして状況をプロンプトに起こし、画像として日記風に紹介。

大げさな表現ではありましたが、怖さ的にはこのぐらいの観光リフト。

いつもの温泉では

久しぶりの温泉宿ということで体を休めつつ

豪華な食事で感動。

今回、この、既存のプロンプトを元にGeminiに「こういうシーンでプロンプトを書いてくれ」と頼み「こういう部屋にいるからそれを元にプロンプトを起こして反映させてほしい」などの共同によりなんとかなりました。う

ユースケース:Gemini nano banana、トーンの変更。

こちらの続きです。今度は、雰囲気そのものを変えるやり方です。

プロンプトとその生成結果(藤の季節)

利用プロンプト。展開はクリック

Anime / manga style illustration (moe-style, ultra-detailed, glossy finish, cinematic lighting, hyper-detailed texture, high-shine hair strands)
Detail: `huge glossy eyes, small nose, slightly rounded face`
Aspect ratio: 16:9, widescreen

Perspective: Low-angle perspective, viewing character from below, subtle foreshortening to emphasize legs and the foreground objects.
Focus: Upper body, thick thigh emphasis, layered fabrics (pareo/blouse), stationery spread in the immediate foreground, lakeside background (under a wisteria trellis on a wooden deck).

# --------------------
# Variables - Sample Inputs (Integrated & Optimized)
# --------------------
TimeOfDay: late morning (clear sunlight)
Weather: clear blue sky, gentle spring breeze
Season: late spring
Mood: serene, content, scholarly, airy yet elegant, vibrant
Expression: charming smile, lively and happily
GlassesState: Yes (worn)
GlassesStyle: thin rectangular frame
HairBase: black
HairAccent: red blue gradation
HairStyle: pony tail, semi long, strands lifted by gentle breeze
ThighEmphasis: thick, well-rounded upper thighs with prominent volume
HosieryColor: sheer beige 
HosieryPattern: light gray dot pattern, full-leg stocking 
BlouseColor: pearl white
SwimsuitColor: rose red
SwimsuitMotif: lace
RibbonTieColor: elegant pink
PareoColorBase: light purple and cream tartan
ThighStrapColor: leather brown
FootwearColor: low-soled shoes (casual style)
SkinToneDetail: healthy tan face/arms/legs, torso pale
SweatDetail: false (no sweat)
ShoulderExposure: true
NotebookType: thin, stylish laptop (NO ANY IP BRAND, LOGO, TRADEMARK VISIBLE, fancy stickers)
PenType: stylus
StationeryLayout: foldable white low table, a natural jute rug spread 
SideItems: a small glass of iced tea with lemon, a light novel book, wicker basket, smartphone and earphone
ItemPlacement: scattered

# --------------------
# Outfit (Late Spring Lakeside on Deck)
# --------------------
Blouse: sleeveless blouse (color=`BlouseColor`, transparency=`transparent subtle glossy`), vertical seam lines, draped off shoulders (ShoulderExposure=true)
Swimsuit: (color=`SwimsuitColor`) with Motif=`SwimsuitMotif`, barely visible beneath blouse
RibbonTie: ribbon tie (color=`RibbonTieColor`)
Pareo: wrap skirt (color=`PareoColorBase`), style=PareoStyle, subtly sheer, naturally flowing to the ground
Hosiery: full-leg stocking (color=`HosieryColor`) with pattern=`HosieryPattern`, upper section thick and reinforced (OL style)
ThighStrap: single snug thigh strap belt (color=`ThighStrapColor`), emphasizing `ThighEmphasis`
Outerwear: (None)
Accessories: thin rectangular frame glasses (worn), small sapphire accessory, thin golden chain with pocket watch
Footwear: low-soled shoes (color=`FootwearColor`), placed nearby

# --------------------
# Pose / Character (Seated Writing)
# --------------------
BodyOrientation: seated relaxed on a jute rug, full body visible
PoseAction: upper body leaning slightly forward over a thin laptop, actively writing/sketching with a stylus
BodyDetail: Legs slightly bent, one knee raised, casual natural posture, pareo folds flowing naturally to the side/ground, thick thighs prominent in foreground
Expression: charming smile, lively and happily
TearMole: (Optional, tear mole below left eye)

# --------------------
# Scene (Late Spring Wisteria Deck Lakeside)
# --------------------
Location: Wooden deck under a Wisteria trellis (full bloom, soft purple flowers hanging), beside a clear lakeside (calm water, clear reflection). 
Scenery: Clear blue sky visible through the wisteria flowers, gentle breeze, natural jute rug spread on the wooden deck, foldable low table placed on top, wicker basket and a small glass of iced tea visible nearby.  
Atmosphere: Tranquil, studious, lakeside, late spring setting, airy yet elegant (Mood).
EnvironmentalEffects: Clear, bright sunlight filtering through the wisteria trellis, creating dappled light and soft shadows on the deck and the character, subtle fluttering of blouse/pareo/hair with breeze. 

こうして出てきた生成物はこちらです。

今度は、

  • 藤の季節から夏へ変えた場合は変数の変化だけでは足りません。
  • 夏らしい雰囲気を足すプロンプトを明示することが必要です。

この、変数を(つまりキャラクターの髪型や色指定など)をそのままにした状態で、「状況を指示するプロンプト」を追加するとどうなるかがこちらです。

プロンプトとその生成結果(藤が終わった後)

変更後のプロンプトの表示はこちらをクリック
Anime / manga style illustration (moe-style, ultra-detailed, glossy finish, cinematic lighting, hyper-detailed texture, high-shine hair strands)
Detail: `huge glossy eyes, small nose, slightly rounded face`
Aspect ratio: 16:9, widescreen

Perspective: **Low-angle perspective, viewing character from below, subtle foreshortening to emphasize legs and the foreground objects.**
Focus: **Upper body, thick thigh emphasis, layered fabrics (pareo/blouse), stationery spread in the immediate foreground, lakeside background (under a leafy wisteria trellis on a wooden deck).**

# --------------------
# Variables - Sample Inputs (Integrated & Optimized)
# --------------------
TimeOfDay: **midday (strong, bright summer sunlight)**
Weather: **intense summer heat, clear blue sky, slight haze, no breeze**
Season: **mid-summer**
Mood: **sultry, focused, determined, slightly overwhelmed by heat, energetic**
Expression: **charming smile, lively and happily**
GlassesState: **Yes (worn)**
GlassesStyle: **thin rectangular frame**
HairBase: black
HairAccent: red blue gradation
HairStyle: pony tail, semi long, strands *slightly damp and sticking to neck/forehead*
ThighEmphasis: thick, well-rounded upper thighs with prominent volume
HosieryColor: **sheer beige**
HosieryPattern: **light gray dot pattern, full-leg stocking**
BlouseColor: pearl white
SwimsuitColor: rose red
SwimsuitMotif: lace
RibbonTieColor: elegant pink
PareoColorBase: light purple and cream tartan
ThighStrapColor: leather brown
FootwearColor: low-soled shoes (casual style)
SkinToneDetail: **healthy tan face/arms/legs, torso pale, *slightly flushed from heat***
SweatDetail: **true (profuse sweat)**
ShoulderExposure: true
NotebookType: **thin, stylish laptop (NO ANY IP BRAND, LOGO, TRADEMARK VISIBLE, fancy stickers)**
PenType: **stylus**
StationeryLayout: **foldable white low table, a natural jute rug spread**
SideItems: **a small glass of iced tea with condensation (sweating glass), a light novel book, wicker basket, smartphone and earphone, *a handheld folding fan (placed nearby)***
ItemPlacement: **scattered**

# --------------------
# Outfit (Mid-Summer Lakeside on Deck)
# --------------------
Blouse: **sleeveless blouse** (color=`BlouseColor`, transparency=`transparent subtle glossy`, **damp spots visible on back/chest from sweat**), vertical seam lines, **draped off shoulders (ShoulderExposure=true)**
Swimsuit: (color=`SwimsuitColor`) with Motif=`SwimsuitMotif`, barely visible beneath blouse
RibbonTie: ribbon tie (color=`RibbonTieColor`)
Pareo: **wrap skirt** (color=`PareoColorBase`), style=PareoStyle, **subtly sheer**, naturally flowing to the ground
Hosiery: **full-leg stocking** (color=`HosieryColor`) with pattern=`HosieryPattern`, **upper section thick and reinforced (OL style)**
ThighStrap: **single snug thigh strap belt** (color=`ThighStrapColor`), emphasizing `ThighEmphasis`, ***slight sheen of sweat visible on inner thighs/strapped area***
Outerwear: **(None)**
Accessories: **thin rectangular frame glasses (worn), *beads of sweat on the frames/lenses***, **small sapphire accessory**, thin golden chain with pocket watch
Footwear: low-soled shoes (color=`FootwearColor`), placed nearby

# --------------------
# Pose / Character (Seated Writing - Sweaty)
# --------------------
BodyOrientation: **seated relaxed on a jute rug**, full body visible
PoseAction: **upper body leaning slightly forward over a thin laptop, actively writing/sketching with a stylus, *forehead slightly furrowed in concentration against the heat***
BodyDetail: Legs slightly bent, one knee raised, casual natural posture, **pareo folds flowing naturally to the side/ground, thick thighs prominent in foreground, *skin glossy with sweat***
Expression: **charming smile, lively and happily**
TearMole: **(Optional, tear mole below left eye)**

# --------------------
# Scene (Mid-Summer Wisteria Deck Lakeside)
# --------------------
Location: **Wooden deck under a Wisteria trellis (covered in deep green leaves, providing dense shade), beside a clear lakeside (calm water, heat haze over the surface).** // 藤の花を葉に変更
Scenery: **Clear blue sky, intense summer light**, **natural jute rug spread** on the wooden deck, foldable low table placed on top, **iced tea glass with heavy condensation, wicker basket visible nearby.**
Atmosphere: **Sultry, focused, lakeside, mid-summer setting, intense heat (Mood).**
EnvironmentalEffects: **Strong, harsh summer sunlight filtered by the dense wisteria leaves, creating deep, fragmented shadows on the deck and the character**, **heat haze over the lake**, ***visible sheen of sweat on skin and damp spots on clothing***.

生成物はこちら。

と、キャラクターが同じでも、初夏と夏の違いが出てきています。

プロンプト差分

2つのプロンプトの比較を明確にするため、以下に示します。

  • A: 晩春(クリアな青空)のプロンプト(藤の花あり)
  • B: 夏(汗・藤棚が葉)のプロンプト(藤棚が葉)

この2つのプロンプト間のdiff形式の差分を示します。

晩春(A)から夏(B)への差分(diff形式)

差分を表示するにはこちらをクリック
--- A: 晩春(クリアな青空)のプロンプト
+++ B: 夏(汗・藤棚が葉)のプロンプト
@@ -14,14 +14,14 @@
 # Variables - Sample Inputs (Integrated & Optimized)
 # --------------------
-TimeOfDay: **late morning (clear sunlight)** // 調整
-Weather: **clear blue sky, gentle spring breeze** // 変更
-Season: **late spring** // 変更
-Mood: **serene, content, scholarly, airy yet elegant, vibrant** // 調整
+TimeOfDay: **midday (strong, bright summer sunlight)** // 夏の陽光に変更
+Weather: **intense summer heat, clear blue sky, slight haze, no breeze** // 猛暑に変更
+Season: **mid-summer** // 変更
+Mood: **sultry, focused, determined, slightly overwhelmed by heat, energetic** // 夏の熱気に合わせて調整
 Expression: **charming smile, lively and happily**
 GlassesState: **Yes (worn)**
 GlassesStyle: **thin rectangular frame**
 HairBase: black
 HairAccent: red blue gradation
-HairStyle: pony tail, semi long, strands lifted by gentle breeze
+HairStyle: pony tail, semi long, strands *slightly damp and sticking to neck/forehead* // 発汗の状況を追加
 ThighEmphasis: thick, well-rounded upper thighs with prominent volume
 HosieryColor: **sheer beige** // 晩春の雰囲気に合わせて調整
 HosieryPattern: **light gray dot pattern, full-leg stocking** // 晩春の雰囲気に合わせて調整
@@ -34,10 +34,10 @@
 FootwearColor: low-soled shoes (casual style)
-SkinToneDetail: **healthy tan face/arms/legs, torso pale**
-SweatDetail: **false (no sweat)** // 変更
+SkinToneDetail: **healthy tan face/arms/legs, torso pale, *slightly flushed from heat*** // 発汗の状況を追加
+SweatDetail: **true (profuse sweat)** // **発汗の状況に変更**
 ShoulderExposure: true
 NotebookType: **thin, stylish laptop (NO ANY IP BRAND, LOGO, TRADEMARK VISIBLE, fancy stickers)**
 PenType: **stylus**
-StationeryLayout: **foldable white low table, a natural jute rug spread** // 晩春の雰囲気に合わせて調整
-SideItems: **a small glass of iced tea with lemon, a light novel book, wicker basket, smartphone and earphone** // 晩春の雰囲気に合わせて調整
+StationeryLayout: **foldable white low table, a natural jute rug spread**
+SideItems: **a small glass of iced tea with condensation (sweating glass), a light novel book, wicker basket, smartphone and earphone, *a handheld folding fan (placed nearby)*** // 状況に合わせてアイテムを追加
 ItemPlacement: **scattered**
 
@@ -53,7 +53,7 @@
 Pareo: **wrap skirt** (color=`PareoColorBase`), style=PareoStyle, **subtly sheer**, naturally flowing to the ground
 Hosiery: **full-leg stocking** (color=`HosieryColor`) with pattern=`HosieryPattern`, **upper section thick and reinforced (OL style)**
-ThighStrap: **single snug thigh strap belt** (color=`ThighStrapColor`), emphasizing `ThighEmphasis`
+ThighStrap: **single snug thigh strap belt** (color=`ThighStrapColor`), emphasizing `ThighEmphasis`, ***slight sheen of sweat visible on inner thighs/strapped area*** // 発汗の状況を追加
 Outerwear: **(None)**
-Accessories: **thin rectangular frame glasses (worn)**, **small sapphire accessory**, thin golden chain with pocket watch
+Accessories: **thin rectangular frame glasses (worn), *beads of sweat on the frames/lenses***, **small sapphire accessory**, thin golden chain with pocket watch
 Footwear: low-soled shoes (color=`FootwearColor`), placed nearby
 
@@ -64,15 +64,15 @@
 BodyOrientation: **seated relaxed on a jute rug**, full body visible
-PoseAction: **upper body leaning slightly forward over a thin laptop, actively writing/sketching with a stylus**
-BodyDetail: Legs slightly bent, one knee raised, casual natural posture, **pareo folds flowing naturally to the side/ground, thick thighs prominent in foreground**
+PoseAction: **upper body leaning slightly forward over a thin laptop, actively writing/sketching with a stylus, *forehead slightly furrowed in concentration against the heat*** // 状況に合わせてポーズに熱気を追加
+BodyDetail: Legs slightly bent, one knee raised, casual natural posture, **pareo folds flowing naturally to the side/ground, thick thighs prominent in foreground, *skin glossy with sweat*** // 発汗の状況を追加
 Expression: **charming smile, lively and happily**
 TearMole: **(Optional, tear mole below left eye)**
 
 # --------------------
 # Scene (Late Spring Wisteria Deck Lakeside)
 # --------------------
-Location: **Wooden deck under a Wisteria trellis (full bloom, soft purple flowers hanging), beside a clear lakeside (calm water, clear reflection).** // 変更
-Scenery: **Clear blue sky visible through the wisteria flowers**, gentle breeze, **natural jute rug spread** on the wooden deck, foldable low table placed on top, **wicker basket and a small glass of iced tea visible nearby.** // 変更
-Atmosphere: **Tranquil, studious, lakeside, late spring setting, airy yet elegant (Mood).**
-EnvironmentalEffects: **Clear, bright sunlight filtering through the wisteria trellis, creating dappled light and soft shadows on the deck and the character**, subtle fluttering of blouse/pareo/hair with breeze. // 変更
+Location: **Wooden deck under a Wisteria trellis (covered in deep green leaves, providing dense shade), beside a clear lakeside (calm water, heat haze over the surface).** // 藤の花を葉に変更
+Scenery: **Clear blue sky, intense summer light**, **natural jute rug spread** on the wooden deck, foldable low table placed on top, **iced tea glass with heavy condensation, wicker basket visible nearby.**
+Atmosphere: **Sultry, focused, lakeside, mid-summer setting, intense heat (Mood).**
+EnvironmentalEffects: **Strong, harsh summer sunlight filtered by the dense wisteria leaves, creating deep, fragmented shadows on the deck and the character**, **heat haze over the lake**, ***visible sheen of sweat on skin and damp spots on clothing***. // **発汗の描写を強調**

と、変数もわずかに変更されていることが分かります。

変更点の意図

どのような意図があったのかの解説です。(一部抜粋)

猛暑の強調意図(AIへの指示)
TimeOfDay: midday (strong, bright summer sunlight)柔らかい光から、最も強烈でコントラストの強い真昼の光に変更し、夏の過酷さを強調する。
Season: mid-summer, Weather: intense summer heat, slight haze, no breeze季節を「真夏」に固定し、静止した空気と熱気を描写することで、逃げ場のない暑さを演出する。
Location: Wisteria trellis (covered in deep green leaves, providing dense shade)藤の花(春)を濃い緑の葉に変更し、日陰の下でも暑いという真夏の説得力を与える。
EnvironmentalEffects: Strong, harsh summer sunlight... creating deep, fragmented shadows... heat haze over the lake**光を「強烈」「苛烈 (harsh)」と指示し、湖上に「陽炎(heat haze)」**を描写することで、視覚的に暑さを伝える。
変更点意図(AIへの指示)
SweatDetail: true (profuse sweat)「プロフューズ(大量の)」な汗を明確に指示し、湿度の高さを表現する。
HairStyle: strands *slightly damp and sticking to neck/forehead*髪が風でなびく描写を削除し、汗で濡れて肌に張り付く様子に変更。
SkinToneDetail: *slightly flushed from heat*健康的な肌色に加えて**「熱による紅潮(flushed)」**を指示し、体温の上昇と暑さによる疲労感を表現する。
Outfit / Blouse: (damp spots visible on back/chest from sweat)服が汗で濡れている箇所を明確に指示し、薄手の布地の透け感と湿り気を強調する。
Accessories / glasses: *beads of sweat on the frames/lenses*眼鏡のフレームやレンズについた汗の玉を描写し、細部から暑さと不快感を描写するリアリズムを追求する。

より詳細な状況を描かせるためには、より長文の指示を書く。

そのためGeminiには最初にテキスト形式で

  • 「こういう絵を作りたい」

と相談。そして新たなチャットでイメージ生成。それを元に

  • もっとミステリアスな雰囲気に
  • 表情を変えたい
  • ポーズを変更するには?

などと相談していくのが互いの労力を軽減することになるかと思います。

Page 1 of 269

Powered by WordPress & Theme by Anders Norén