﻿<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ja">
	<id>https://wiki.blender.jp/index.php?action=history&amp;feed=atom&amp;title=Extensions%3A2.4%2FPy%2FNodes%2FCookbook%2FInput</id>
	<title>Extensions:2.4/Py/Nodes/Cookbook/Input - 版の履歴</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.blender.jp/index.php?action=history&amp;feed=atom&amp;title=Extensions%3A2.4%2FPy%2FNodes%2FCookbook%2FInput"/>
	<link rel="alternate" type="text/html" href="https://wiki.blender.jp/index.php?title=Extensions:2.4/Py/Nodes/Cookbook/Input&amp;action=history"/>
	<updated>2026-04-22T00:36:43Z</updated>
	<subtitle>このウィキのこのページに関する変更履歴</subtitle>
	<generator>MediaWiki 1.31.0</generator>
	<entry>
		<id>https://wiki.blender.jp/index.php?title=Extensions:2.4/Py/Nodes/Cookbook/Input&amp;diff=59472&amp;oldid=prev</id>
		<title>Yamyam: 1版 をインポートしました</title>
		<link rel="alternate" type="text/html" href="https://wiki.blender.jp/index.php?title=Extensions:2.4/Py/Nodes/Cookbook/Input&amp;diff=59472&amp;oldid=prev"/>
		<updated>2018-06-28T17:54:35Z</updated>

		<summary type="html">&lt;p&gt;1版 をインポートしました&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;ja&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← 古い版&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;2018年6月28日 (木) 17:54時点における版&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;ja&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(相違点なし)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Yamyam</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.blender.jp/index.php?title=Extensions:2.4/Py/Nodes/Cookbook/Input&amp;diff=59471&amp;oldid=prev</id>
		<title>wiki&gt;Mindrones bot: Bot: Fixing redirects</title>
		<link rel="alternate" type="text/html" href="https://wiki.blender.jp/index.php?title=Extensions:2.4/Py/Nodes/Cookbook/Input&amp;diff=59471&amp;oldid=prev"/>
		<updated>2010-05-26T17:16:00Z</updated>

		<summary type="html">&lt;p&gt;Bot: Fixing redirects&lt;/p&gt;
&lt;p&gt;&lt;b&gt;新規ページ&lt;/b&gt;&lt;/p&gt;&lt;div&gt;[[Extensions:2.4/Py/Nodes/Cookbook|Back to index]]&lt;br /&gt;
&lt;br /&gt;
== Ideas ==&lt;br /&gt;
* Random input node: See https://projects.blender.org/tracker/index.php?func=detail&amp;amp;aid=7774 for reference. This should be straightforward to implement by using the Noise module http://www.blender.org/documentation/246PythonDoc/Noise-module.html .&lt;br /&gt;
* Add your idea here.&lt;br /&gt;
&lt;br /&gt;
== Recipes ==&lt;br /&gt;
&lt;br /&gt;
=== IPO input ===&lt;br /&gt;
[[Image:Pynode-ipoinput.png|right|thumb|Example frame of an animation made using IPO input node.[[http://wiki.blender.org/uploads/7/7a/Pynode-ipoinput.blend .blend]]]]&lt;br /&gt;
This node uses an IPO to get an output value. Basically for this to work you need to create a dummy object (empty for instance) that has an IPO that has been keyframed to OB_LOCX. Note that you can key OB_LOCY and OB_LOCZ too if you want. To get those keys, just key (i key) location of the dummy object. After that open the IPO editor and edit the curves as you like.&lt;br /&gt;
&lt;br /&gt;
Note that current version uses an evil hack to get past a bug in system. So this means there are extra inputs in the node. I will get rid of the inputs after the bug is fixed. Another way to get past the issue would be to store the names of the sockets in the creation phase and then use them to modify outputs but I settled for this solution.&lt;br /&gt;
{{clr}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang = &amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
from Blender import Ipo, Node, Scene&lt;br /&gt;
from Blender.Scene import Render&lt;br /&gt;
&lt;br /&gt;
class IpoInputNode(Node.Scripted):&lt;br /&gt;
    def __init__(self, sockets):&lt;br /&gt;
        out_sockets = []&lt;br /&gt;
        &lt;br /&gt;
        for i in range(1, 4):&lt;br /&gt;
            out_sockets.append(Node.Socket('Value' + str(i), val=0.0))&lt;br /&gt;
        &lt;br /&gt;
        sockets.input = out_sockets # evil hack needed to make output socket indices work&lt;br /&gt;
        sockets.output = out_sockets&lt;br /&gt;
&lt;br /&gt;
    def __call__(self):&lt;br /&gt;
        ipo = Ipo.Get('NodeIpo')&lt;br /&gt;
        axes = (Ipo.OB_LOCX, Ipo.OB_LOCY, Ipo.OB_LOCZ)&lt;br /&gt;
        scn = Scene.GetCurrent()&lt;br /&gt;
        context = scn.getRenderingContext()&lt;br /&gt;
        &lt;br /&gt;
        if ipo:&lt;br /&gt;
            for i in range(3):&lt;br /&gt;
                icu = ipo[axes[i]]&lt;br /&gt;
                &lt;br /&gt;
                if icu:&lt;br /&gt;
                    self.output[i] = icu.__getitem__(context.currentFrame())&lt;br /&gt;
&lt;br /&gt;
__node__ = IpoInputNode&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Script]]&lt;/div&gt;</summary>
		<author><name>wiki&gt;Mindrones bot</name></author>
		
	</entry>
</feed>