diff options
1489 files changed, 32113 insertions, 3585 deletions
diff --git a/AUTHORS.md b/AUTHORS.md new file mode 100644 index 0000000000..189985309f --- /dev/null +++ b/AUTHORS.md @@ -0,0 +1,76 @@ +# Godot Engine authors + +Godot Engine is developed by a community of voluntary contributors who +contribute code, bug reports, documentation, artwork, support, etc. + +It is impossible to list them all; nevertheless, this file aims at listing +the developers who contributed significant patches to this MIT licensed +source code. "Significant" is arbitrarily decided, but should be fair :) + +GitHub usernames are indicated in parentheses, or as sole entry when no other +name is available. + +## Original authors + + Juan Linietsky (reduz) + Ariel Manzur (punto-) + +## Developers + +(in alphabetical order, with 10 commits or more excluding merges) + + Alexander Holland (AlexHolly) + Alexey Velikiy (jonyrock) + Andreas Haas (Hinsbart) + Anton Yabchinskiy (a12n) + Aren Villanueva (kurikaesu) + Ariel Manzur (punto-) + Bastiaan Olij (BastiaanOlij) + Bojidar Marinov (bojidar-bg) + Błażej Szczygieł (zaps166) + Carl Olsson (not-surt) + Dana Olson (adolson) + Daniel J. Ramirez (djrm) + Fabio Alessandrelli (Faless) + Ferenc Arn (tagcup) + Franklin Sobrinho (TheHX) + Geequlim + Gen (dbsGen) + George Marques (vnen) + Guilherme Felipe (guilhermefelipecgs) + Hein-Pieter van Braam (hpvb) + Hubert Jarosz (Marqin) + Ignacio Etcheverry (neikeq) + J08nY + Johan Manuel (29jm) + Joshua Grams (JoshuaGrams) + Juan Linietsky (reduz) + Julian Murgia (StraToN) + Kostadin Damyanov (Max-Might) + L. Krause (eska014) + Marcelo Fernandez (marcelofg55) + Mariano Javier Suligoy (MarianoGnu) + Mario Schlack (hurikhan) + Masoud BH (masoudbh3) + Nathan Warden (NathanWarden) + Ovnuniarchos + Patrick (firefly2442) + Paul Batty (Paulb23) + Pawel Kowal (pkowal1982) + Pedro J. Estébanez (RandomShaper) + Ralf Hölzemer (rollenrolm) + RayKoopa + Rémi Verschelde (akien-mga) + SaracenOne + Thomas Herzog (karroffel) + V. Vamsi Krishna (vkbsb) + Vinzenz Feenstra (vinzenz) + Zher Huei Lee (leezh) + ZuBsPaCe + 박한얼 (volzhs) + est31 + marynate + mrezai + romulox-x + sanikoyes + yg2f (SuperUserNameMan) diff --git a/LICENSE.md b/LICENSE.md index a983b20863..83dc84e041 100644 --- a/LICENSE.md +++ b/LICENSE.md @@ -4,6 +4,7 @@ ************************************************************************ Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. + Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the diff --git a/core/allocators.h b/core/allocators.h index de92d02226..3735a7746e 100644 --- a/core/allocators.h +++ b/core/allocators.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/array.cpp b/core/array.cpp index 80aca6f850..21dab2ba90 100644 --- a/core/array.cpp +++ b/core/array.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/array.h b/core/array.h index f9ba9f7706..589d52886f 100644 --- a/core/array.h +++ b/core/array.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/bind/core_bind.cpp b/core/bind/core_bind.cpp index c9c74094d3..8c57f49069 100644 --- a/core/bind/core_bind.cpp +++ b/core/bind/core_bind.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/bind/core_bind.h b/core/bind/core_bind.h index 1d231ff033..13956c3373 100644 --- a/core/bind/core_bind.h +++ b/core/bind/core_bind.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/class_db.cpp b/core/class_db.cpp index 3c376f7451..94a907a1f0 100644 --- a/core/class_db.cpp +++ b/core/class_db.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/class_db.h b/core/class_db.h index 6966183cfa..547068da5f 100644 --- a/core/class_db.h +++ b/core/class_db.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/color.cpp b/core/color.cpp index f052ddea8a..22a5504431 100644 --- a/core/color.cpp +++ b/core/color.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/color.h b/core/color.h index 2339cd6cd7..46386fac64 100644 --- a/core/color.h +++ b/core/color.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/command_queue_mt.cpp b/core/command_queue_mt.cpp index c66177261b..823494ff67 100644 --- a/core/command_queue_mt.cpp +++ b/core/command_queue_mt.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/command_queue_mt.h b/core/command_queue_mt.h index d8c05ab782..bae8cf7fca 100644 --- a/core/command_queue_mt.h +++ b/core/command_queue_mt.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/compressed_translation.cpp b/core/compressed_translation.cpp index 75c24a5aba..d41534703c 100644 --- a/core/compressed_translation.cpp +++ b/core/compressed_translation.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/compressed_translation.h b/core/compressed_translation.h index abaa4ebe2c..c010491b3a 100644 --- a/core/compressed_translation.h +++ b/core/compressed_translation.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/core_string_names.cpp b/core/core_string_names.cpp index cbb3060f13..e35ac2b72c 100644 --- a/core/core_string_names.cpp +++ b/core/core_string_names.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/core_string_names.h b/core/core_string_names.h index f6542be290..6672772432 100644 --- a/core/core_string_names.h +++ b/core/core_string_names.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/dictionary.cpp b/core/dictionary.cpp index 3663bb1a4f..e6d549b83d 100644 --- a/core/dictionary.cpp +++ b/core/dictionary.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/dictionary.h b/core/dictionary.h index 588e33a95f..27caba916f 100644 --- a/core/dictionary.h +++ b/core/dictionary.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/dvector.cpp b/core/dvector.cpp index 5930a1220b..4bbe1aafd9 100644 --- a/core/dvector.cpp +++ b/core/dvector.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/dvector.h b/core/dvector.h index 3f4318216d..2e951b9661 100644 --- a/core/dvector.h +++ b/core/dvector.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/engine.cpp b/core/engine.cpp index 1e46117bd6..5301c4e519 100644 --- a/core/engine.cpp +++ b/core/engine.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/engine.h b/core/engine.h index 346e9538d6..80b11c095d 100644 --- a/core/engine.h +++ b/core/engine.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/error_list.h b/core/error_list.h index 7e4249886b..14ef7bbc18 100644 --- a/core/error_list.h +++ b/core/error_list.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/error_macros.cpp b/core/error_macros.cpp index 530e209dd8..afbff6c52d 100644 --- a/core/error_macros.cpp +++ b/core/error_macros.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/error_macros.h b/core/error_macros.h index 02a15de067..00fced3586 100644 --- a/core/error_macros.h +++ b/core/error_macros.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/event_queue.cpp b/core/event_queue.cpp index f9ebc82e40..c5257d5f6b 100644 --- a/core/event_queue.cpp +++ b/core/event_queue.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/event_queue.h b/core/event_queue.h index 8e35445b68..a6c436909d 100644 --- a/core/event_queue.h +++ b/core/event_queue.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/func_ref.cpp b/core/func_ref.cpp index 1589be996e..1121c6d3e4 100644 --- a/core/func_ref.cpp +++ b/core/func_ref.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/func_ref.h b/core/func_ref.h index 1179c98e29..e60d5bd771 100644 --- a/core/func_ref.h +++ b/core/func_ref.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/global_config.cpp b/core/global_config.cpp index 9ee49180f1..d37c67c84a 100644 --- a/core/global_config.cpp +++ b/core/global_config.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/global_config.h b/core/global_config.h index 7bdf356129..d0f64dc23c 100644 --- a/core/global_config.h +++ b/core/global_config.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/global_constants.cpp b/core/global_constants.cpp index 02655993a4..9bc98c5ad7 100644 --- a/core/global_constants.cpp +++ b/core/global_constants.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/global_constants.h b/core/global_constants.h index 8823ebf3b0..f298fc31c7 100644 --- a/core/global_constants.h +++ b/core/global_constants.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/hash_map.h b/core/hash_map.h index 86646b825c..49701188ab 100644 --- a/core/hash_map.h +++ b/core/hash_map.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/hashfuncs.h b/core/hashfuncs.h index aff6772d68..fbd2e161b3 100644 --- a/core/hashfuncs.h +++ b/core/hashfuncs.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/helper/math_fieldwise.cpp b/core/helper/math_fieldwise.cpp index 377a3f8234..2f176fb9bf 100644 --- a/core/helper/math_fieldwise.cpp +++ b/core/helper/math_fieldwise.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/helper/math_fieldwise.h b/core/helper/math_fieldwise.h index e73227f148..58489fd3bb 100644 --- a/core/helper/math_fieldwise.h +++ b/core/helper/math_fieldwise.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/helper/value_evaluator.h b/core/helper/value_evaluator.h index e001e1646a..e32697ca95 100644 --- a/core/helper/value_evaluator.h +++ b/core/helper/value_evaluator.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/image.cpp b/core/image.cpp index 649a51c174..5fb7cfa812 100644 --- a/core/image.cpp +++ b/core/image.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/image.h b/core/image.h index 300ac11e04..fc87ee8847 100644 --- a/core/image.h +++ b/core/image.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/input_map.cpp b/core/input_map.cpp index b2b4246d6a..9f9eba01c7 100644 --- a/core/input_map.cpp +++ b/core/input_map.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/input_map.h b/core/input_map.h index 25d0c3e1b9..a25255da2d 100644 --- a/core/input_map.h +++ b/core/input_map.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/int_types.h b/core/int_types.h index 50ce38a3ba..973e0c749d 100644 --- a/core/int_types.h +++ b/core/int_types.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/compression.cpp b/core/io/compression.cpp index 25fd2ad2ee..c26bd7cdcd 100644 --- a/core/io/compression.cpp +++ b/core/io/compression.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/compression.h b/core/io/compression.h index 5156919867..a982a074b1 100644 --- a/core/io/compression.h +++ b/core/io/compression.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/config_file.cpp b/core/io/config_file.cpp index 6560302083..4067899068 100644 --- a/core/io/config_file.cpp +++ b/core/io/config_file.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/config_file.h b/core/io/config_file.h index 4d179bd137..75a3a519a6 100644 --- a/core/io/config_file.h +++ b/core/io/config_file.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/file_access_buffered.cpp b/core/io/file_access_buffered.cpp index dd4d3e6e8f..81adbbbaf7 100644 --- a/core/io/file_access_buffered.cpp +++ b/core/io/file_access_buffered.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/file_access_buffered.h b/core/io/file_access_buffered.h index 964152af5e..c5bf120890 100644 --- a/core/io/file_access_buffered.h +++ b/core/io/file_access_buffered.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/file_access_buffered_fa.h b/core/io/file_access_buffered_fa.h index dd1e99f8f6..362589adf1 100644 --- a/core/io/file_access_buffered_fa.h +++ b/core/io/file_access_buffered_fa.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/file_access_compressed.cpp b/core/io/file_access_compressed.cpp index d8ae3e6ff1..4c6e8f5507 100644 --- a/core/io/file_access_compressed.cpp +++ b/core/io/file_access_compressed.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/file_access_compressed.h b/core/io/file_access_compressed.h index ea45c110d2..6af9d9b6ca 100644 --- a/core/io/file_access_compressed.h +++ b/core/io/file_access_compressed.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/file_access_encrypted.cpp b/core/io/file_access_encrypted.cpp index 03700cad48..2625e5fe34 100644 --- a/core/io/file_access_encrypted.cpp +++ b/core/io/file_access_encrypted.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/file_access_encrypted.h b/core/io/file_access_encrypted.h index ac4d2bd1c7..2bd3c52661 100644 --- a/core/io/file_access_encrypted.h +++ b/core/io/file_access_encrypted.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/file_access_memory.cpp b/core/io/file_access_memory.cpp index 966109bfe1..32ea4ce096 100644 --- a/core/io/file_access_memory.cpp +++ b/core/io/file_access_memory.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/file_access_memory.h b/core/io/file_access_memory.h index 687e3e9bee..8b6abe7e81 100644 --- a/core/io/file_access_memory.h +++ b/core/io/file_access_memory.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/file_access_network.cpp b/core/io/file_access_network.cpp index 9120b55565..50e78899fb 100644 --- a/core/io/file_access_network.cpp +++ b/core/io/file_access_network.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/file_access_network.h b/core/io/file_access_network.h index bb3d22c1e9..1e85756122 100644 --- a/core/io/file_access_network.h +++ b/core/io/file_access_network.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/file_access_pack.cpp b/core/io/file_access_pack.cpp index 91d256ee2b..bb942b54d7 100644 --- a/core/io/file_access_pack.cpp +++ b/core/io/file_access_pack.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/file_access_pack.h b/core/io/file_access_pack.h index d16f5c461e..25473131d6 100644 --- a/core/io/file_access_pack.h +++ b/core/io/file_access_pack.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/file_access_zip.cpp b/core/io/file_access_zip.cpp index 47432b1e97..a92014000d 100644 --- a/core/io/file_access_zip.cpp +++ b/core/io/file_access_zip.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/file_access_zip.h b/core/io/file_access_zip.h index 7d5be8678d..8c3cd3ae67 100644 --- a/core/io/file_access_zip.h +++ b/core/io/file_access_zip.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/http_client.cpp b/core/io/http_client.cpp index be5309ddfa..899f3b3b2d 100644 --- a/core/io/http_client.cpp +++ b/core/io/http_client.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/http_client.h b/core/io/http_client.h index e2b0e9ccea..3cee1e0c6b 100644 --- a/core/io/http_client.h +++ b/core/io/http_client.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/image_loader.cpp b/core/io/image_loader.cpp index 5f88ca65e3..4864c18831 100644 --- a/core/io/image_loader.cpp +++ b/core/io/image_loader.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/image_loader.h b/core/io/image_loader.h index b70170303d..37149dbe9d 100644 --- a/core/io/image_loader.h +++ b/core/io/image_loader.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/ip.cpp b/core/io/ip.cpp index 6713963495..bf139eeacb 100644 --- a/core/io/ip.cpp +++ b/core/io/ip.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/ip.h b/core/io/ip.h index 052a0e08cc..66a4a48da2 100644 --- a/core/io/ip.h +++ b/core/io/ip.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/ip_address.cpp b/core/io/ip_address.cpp index fa0eab4f0d..ea3041945c 100644 --- a/core/io/ip_address.cpp +++ b/core/io/ip_address.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/ip_address.h b/core/io/ip_address.h index 52d6974d5e..ac58283605 100644 --- a/core/io/ip_address.h +++ b/core/io/ip_address.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/json.cpp b/core/io/json.cpp index 98d48ce4ae..10fd60abf7 100644 --- a/core/io/json.cpp +++ b/core/io/json.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/json.h b/core/io/json.h index afd97c85b5..75df15a077 100644 --- a/core/io/json.h +++ b/core/io/json.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/marshalls.cpp b/core/io/marshalls.cpp index 927ce31744..3889c8f3ae 100644 --- a/core/io/marshalls.cpp +++ b/core/io/marshalls.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/marshalls.h b/core/io/marshalls.h index b322410929..eb2785aa4e 100644 --- a/core/io/marshalls.h +++ b/core/io/marshalls.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/networked_multiplayer_peer.cpp b/core/io/networked_multiplayer_peer.cpp index da661d0981..105b8dce44 100644 --- a/core/io/networked_multiplayer_peer.cpp +++ b/core/io/networked_multiplayer_peer.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/networked_multiplayer_peer.h b/core/io/networked_multiplayer_peer.h index 1324a61c72..bd951912f9 100644 --- a/core/io/networked_multiplayer_peer.h +++ b/core/io/networked_multiplayer_peer.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/packet_peer.cpp b/core/io/packet_peer.cpp index 8115673d46..ac68d5240c 100644 --- a/core/io/packet_peer.cpp +++ b/core/io/packet_peer.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/packet_peer.h b/core/io/packet_peer.h index 5f8d63f8c8..95806aa511 100644 --- a/core/io/packet_peer.h +++ b/core/io/packet_peer.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/packet_peer_udp.cpp b/core/io/packet_peer_udp.cpp index 3bc116f1b6..8bc3241cc5 100644 --- a/core/io/packet_peer_udp.cpp +++ b/core/io/packet_peer_udp.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/packet_peer_udp.h b/core/io/packet_peer_udp.h index c486f443fb..a39eb6bcfd 100644 --- a/core/io/packet_peer_udp.h +++ b/core/io/packet_peer_udp.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/pck_packer.cpp b/core/io/pck_packer.cpp index 974ed64267..28382ab419 100644 --- a/core/io/pck_packer.cpp +++ b/core/io/pck_packer.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/pck_packer.h b/core/io/pck_packer.h index 1edb14ab27..ddfa093a6b 100644 --- a/core/io/pck_packer.h +++ b/core/io/pck_packer.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/resource_format_binary.cpp b/core/io/resource_format_binary.cpp index 60dccebebf..fc18a44ed3 100644 --- a/core/io/resource_format_binary.cpp +++ b/core/io/resource_format_binary.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/resource_format_binary.h b/core/io/resource_format_binary.h index f378d0eae9..59b9d66d8f 100644 --- a/core/io/resource_format_binary.h +++ b/core/io/resource_format_binary.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/resource_import.cpp b/core/io/resource_import.cpp index 27173a721d..ffb27bc26a 100644 --- a/core/io/resource_import.cpp +++ b/core/io/resource_import.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/resource_import.h b/core/io/resource_import.h index f4349a9c61..25b7a534b2 100644 --- a/core/io/resource_import.h +++ b/core/io/resource_import.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/resource_loader.cpp b/core/io/resource_loader.cpp index 5d8ec57ee0..3b43492bc5 100644 --- a/core/io/resource_loader.cpp +++ b/core/io/resource_loader.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/resource_loader.h b/core/io/resource_loader.h index 0d51b07414..54b62f6916 100644 --- a/core/io/resource_loader.h +++ b/core/io/resource_loader.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/resource_saver.cpp b/core/io/resource_saver.cpp index e4548b16ff..8592346a72 100644 --- a/core/io/resource_saver.cpp +++ b/core/io/resource_saver.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/resource_saver.h b/core/io/resource_saver.h index b9bb2aafae..f7fbcc1fb8 100644 --- a/core/io/resource_saver.h +++ b/core/io/resource_saver.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/stream_peer.cpp b/core/io/stream_peer.cpp index 07df47f8c0..0dbcb3cf56 100644 --- a/core/io/stream_peer.cpp +++ b/core/io/stream_peer.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/stream_peer.h b/core/io/stream_peer.h index 7c20d10b10..d0748a8c9e 100644 --- a/core/io/stream_peer.h +++ b/core/io/stream_peer.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/stream_peer_ssl.cpp b/core/io/stream_peer_ssl.cpp index 6db6eb30ed..57cffd073a 100644 --- a/core/io/stream_peer_ssl.cpp +++ b/core/io/stream_peer_ssl.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/stream_peer_ssl.h b/core/io/stream_peer_ssl.h index 468cef66a2..a81ae24e4a 100644 --- a/core/io/stream_peer_ssl.h +++ b/core/io/stream_peer_ssl.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/stream_peer_tcp.cpp b/core/io/stream_peer_tcp.cpp index db5952e16f..5c859ea7c0 100644 --- a/core/io/stream_peer_tcp.cpp +++ b/core/io/stream_peer_tcp.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/stream_peer_tcp.h b/core/io/stream_peer_tcp.h index 1733619a1c..53c21a93fd 100644 --- a/core/io/stream_peer_tcp.h +++ b/core/io/stream_peer_tcp.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/tcp_server.cpp b/core/io/tcp_server.cpp index f602b569ad..29a80ecc19 100644 --- a/core/io/tcp_server.cpp +++ b/core/io/tcp_server.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/tcp_server.h b/core/io/tcp_server.h index 736aa16f99..4e7fa7cf3e 100644 --- a/core/io/tcp_server.h +++ b/core/io/tcp_server.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/translation_loader_po.cpp b/core/io/translation_loader_po.cpp index 4da661e675..6104608961 100644 --- a/core/io/translation_loader_po.cpp +++ b/core/io/translation_loader_po.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/translation_loader_po.h b/core/io/translation_loader_po.h index fe0440cb2a..a731e4e0d6 100644 --- a/core/io/translation_loader_po.h +++ b/core/io/translation_loader_po.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/xml_parser.cpp b/core/io/xml_parser.cpp index c5929617c9..e5f4433b8f 100644 --- a/core/io/xml_parser.cpp +++ b/core/io/xml_parser.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/xml_parser.h b/core/io/xml_parser.h index 631d77a41e..297211ecc6 100644 --- a/core/io/xml_parser.h +++ b/core/io/xml_parser.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/io/zip_io.h b/core/io/zip_io.h index 4da9fc9c8d..d5af042499 100644 --- a/core/io/zip_io.h +++ b/core/io/zip_io.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/list.h b/core/list.h index b6f2df867f..4390cb65fc 100644 --- a/core/list.h +++ b/core/list.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/map.h b/core/map.h index e9700ff371..acf1d608d8 100644 --- a/core/map.h +++ b/core/map.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/math/a_star.cpp b/core/math/a_star.cpp index c82a40f30d..c327f7ca44 100644 --- a/core/math/a_star.cpp +++ b/core/math/a_star.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/math/a_star.h b/core/math/a_star.h index 43c9c4457a..b9c8833386 100644 --- a/core/math/a_star.h +++ b/core/math/a_star.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/math/audio_frame.cpp b/core/math/audio_frame.cpp index e56157ffef..30a50c8add 100644 --- a/core/math/audio_frame.cpp +++ b/core/math/audio_frame.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/math/audio_frame.h b/core/math/audio_frame.h index dd43f48df4..5ccc9d9e5e 100644 --- a/core/math/audio_frame.h +++ b/core/math/audio_frame.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/math/bsp_tree.cpp b/core/math/bsp_tree.cpp index ef229a0553..9bbce752c0 100644 --- a/core/math/bsp_tree.cpp +++ b/core/math/bsp_tree.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/math/bsp_tree.h b/core/math/bsp_tree.h index 4cfac35a2c..8296e57943 100644 --- a/core/math/bsp_tree.h +++ b/core/math/bsp_tree.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/math/camera_matrix.cpp b/core/math/camera_matrix.cpp index 227f586c43..5b072b7c53 100644 --- a/core/math/camera_matrix.cpp +++ b/core/math/camera_matrix.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/math/camera_matrix.h b/core/math/camera_matrix.h index 857628c703..af61e35993 100644 --- a/core/math/camera_matrix.h +++ b/core/math/camera_matrix.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/math/face3.cpp b/core/math/face3.cpp index 6a15feefe1..6d772cf08c 100644 --- a/core/math/face3.cpp +++ b/core/math/face3.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/math/face3.h b/core/math/face3.h index 6d15c60e3b..31ab72b925 100644 --- a/core/math/face3.h +++ b/core/math/face3.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/math/geometry.cpp b/core/math/geometry.cpp index 97579e41ef..618017f8b3 100644 --- a/core/math/geometry.cpp +++ b/core/math/geometry.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/math/geometry.h b/core/math/geometry.h index 26f977e6eb..2469e799a0 100644 --- a/core/math/geometry.h +++ b/core/math/geometry.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/math/math_2d.cpp b/core/math/math_2d.cpp index 77cff6a052..20b916ee3b 100644 --- a/core/math/math_2d.cpp +++ b/core/math/math_2d.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/math/math_2d.h b/core/math/math_2d.h index 50ebcb845f..128b74baf6 100644 --- a/core/math/math_2d.h +++ b/core/math/math_2d.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/math/math_defs.h b/core/math/math_defs.h index 08f4e27e64..1a5768e515 100644 --- a/core/math/math_defs.h +++ b/core/math/math_defs.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/math/math_funcs.cpp b/core/math/math_funcs.cpp index ccc463c114..6a46b9fbe3 100644 --- a/core/math/math_funcs.cpp +++ b/core/math/math_funcs.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/math/math_funcs.h b/core/math/math_funcs.h index 3e02ac0bb8..10426c9243 100644 --- a/core/math/math_funcs.h +++ b/core/math/math_funcs.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/math/matrix3.cpp b/core/math/matrix3.cpp index b31df2fadb..ef368009d1 100644 --- a/core/math/matrix3.cpp +++ b/core/math/matrix3.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/math/matrix3.h b/core/math/matrix3.h index 0240bc8610..08e963f56e 100644 --- a/core/math/matrix3.h +++ b/core/math/matrix3.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/math/octree.h b/core/math/octree.h index 06c5791b11..4cc046ddf4 100644 --- a/core/math/octree.h +++ b/core/math/octree.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/math/plane.cpp b/core/math/plane.cpp index bef5c3ab06..f5e92866c4 100644 --- a/core/math/plane.cpp +++ b/core/math/plane.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/math/plane.h b/core/math/plane.h index 380452f6d2..5a048674e4 100644 --- a/core/math/plane.h +++ b/core/math/plane.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/math/quat.cpp b/core/math/quat.cpp index b990e9184f..9662542224 100644 --- a/core/math/quat.cpp +++ b/core/math/quat.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/math/quat.h b/core/math/quat.h index 3fc843b83a..76b3cde2a3 100644 --- a/core/math/quat.h +++ b/core/math/quat.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/math/quick_hull.cpp b/core/math/quick_hull.cpp index a235d1cf32..ce93720067 100644 --- a/core/math/quick_hull.cpp +++ b/core/math/quick_hull.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/math/quick_hull.h b/core/math/quick_hull.h index 43a802e6bd..49600649e3 100644 --- a/core/math/quick_hull.h +++ b/core/math/quick_hull.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/math/rect3.cpp b/core/math/rect3.cpp index c0cd66d9bb..39b0beb071 100644 --- a/core/math/rect3.cpp +++ b/core/math/rect3.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/math/rect3.h b/core/math/rect3.h index 0b11cd7b52..136a156151 100644 --- a/core/math/rect3.h +++ b/core/math/rect3.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/math/transform.cpp b/core/math/transform.cpp index d35938e559..e53e6cf519 100644 --- a/core/math/transform.cpp +++ b/core/math/transform.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/math/transform.h b/core/math/transform.h index e307aba129..4731496bf3 100644 --- a/core/math/transform.h +++ b/core/math/transform.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -229,27 +230,4 @@ _FORCE_INLINE_ Rect3 Transform::xform_inv(const Rect3 &p_aabb) const { return ret; } -#ifdef OPTIMIZED_TRANSFORM_IMPL_OVERRIDE - -#else - -struct OptimizedTransform { - - Transform transform; - - _FORCE_INLINE_ void invert() { transform.invert(); } - _FORCE_INLINE_ void affine_invert() { transform.affine_invert(); } - _FORCE_INLINE_ Vector3 xform(const Vector3 &p_vec) const { return transform.xform(p_vec); }; - _FORCE_INLINE_ Vector3 xform_inv(const Vector3 &p_vec) const { return transform.xform_inv(p_vec); }; - _FORCE_INLINE_ OptimizedTransform operator*(const OptimizedTransform &p_ot) const { return OptimizedTransform(transform * p_ot.transform); } - _FORCE_INLINE_ Transform get_transform() const { return transform; } - _FORCE_INLINE_ void set_transform(const Transform &p_transform) { transform = p_transform; } - - OptimizedTransform(const Transform &p_transform) { - transform = p_transform; - } -}; - -#endif - #endif diff --git a/core/math/triangle_mesh.cpp b/core/math/triangle_mesh.cpp index 93c6b2786e..1cf1351646 100644 --- a/core/math/triangle_mesh.cpp +++ b/core/math/triangle_mesh.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/math/triangle_mesh.h b/core/math/triangle_mesh.h index 7f81e54613..166f10c577 100644 --- a/core/math/triangle_mesh.h +++ b/core/math/triangle_mesh.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/math/triangulate.cpp b/core/math/triangulate.cpp index 8568a963ab..4a5d0a078e 100644 --- a/core/math/triangulate.cpp +++ b/core/math/triangulate.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/math/triangulate.h b/core/math/triangulate.h index c23d3ba27d..3f0ad00033 100644 --- a/core/math/triangulate.h +++ b/core/math/triangulate.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/math/vector3.cpp b/core/math/vector3.cpp index 235840e06a..e413cc147d 100644 --- a/core/math/vector3.cpp +++ b/core/math/vector3.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/math/vector3.h b/core/math/vector3.h index 8550ae7009..a6bc20ccb2 100644 --- a/core/math/vector3.h +++ b/core/math/vector3.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/message_queue.cpp b/core/message_queue.cpp index 56c944081a..14e8913d9f 100644 --- a/core/message_queue.cpp +++ b/core/message_queue.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/message_queue.h b/core/message_queue.h index e04530f24c..843ab17d94 100644 --- a/core/message_queue.h +++ b/core/message_queue.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/method_bind.cpp b/core/method_bind.cpp index 0f192a3b8a..51c0e72bc7 100644 --- a/core/method_bind.cpp +++ b/core/method_bind.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/method_bind.h b/core/method_bind.h index f915a7563e..749d8b4fda 100644 --- a/core/method_bind.h +++ b/core/method_bind.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/method_ptrcall.h b/core/method_ptrcall.h index 26d7538bf8..8cb2903842 100644 --- a/core/method_ptrcall.h +++ b/core/method_ptrcall.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/object.cpp b/core/object.cpp index fe6f120c17..7aee936a2d 100644 --- a/core/object.cpp +++ b/core/object.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/object.h b/core/object.h index f4a622f5f7..3b39224af0 100644 --- a/core/object.h +++ b/core/object.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/os/copymem.h b/core/os/copymem.h index 9b13d6c731..3ad2403f9c 100644 --- a/core/os/copymem.h +++ b/core/os/copymem.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/os/dir_access.cpp b/core/os/dir_access.cpp index 6f7255372f..aa03b764ef 100644 --- a/core/os/dir_access.cpp +++ b/core/os/dir_access.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/os/dir_access.h b/core/os/dir_access.h index 1ac2d0e03a..4bee229555 100644 --- a/core/os/dir_access.h +++ b/core/os/dir_access.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/os/file_access.cpp b/core/os/file_access.cpp index 3aac1f6f21..f344525d1e 100644 --- a/core/os/file_access.cpp +++ b/core/os/file_access.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/os/file_access.h b/core/os/file_access.h index 10d3ffebbb..da15ddc544 100644 --- a/core/os/file_access.h +++ b/core/os/file_access.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/os/input.cpp b/core/os/input.cpp index 22ca94d449..6215ad3732 100644 --- a/core/os/input.cpp +++ b/core/os/input.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/os/input.h b/core/os/input.h index 3c33c46eba..4b297a7eef 100644 --- a/core/os/input.h +++ b/core/os/input.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/os/input_event.cpp b/core/os/input_event.cpp index ebb1f4ed01..474bc33b41 100644 --- a/core/os/input_event.cpp +++ b/core/os/input_event.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/os/input_event.h b/core/os/input_event.h index 17b9f8abc1..eb5c5685e5 100644 --- a/core/os/input_event.h +++ b/core/os/input_event.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/os/keyboard.cpp b/core/os/keyboard.cpp index a5f8bfa144..2f5dc03614 100644 --- a/core/os/keyboard.cpp +++ b/core/os/keyboard.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/os/keyboard.h b/core/os/keyboard.h index 1f6bc77334..0a72663867 100644 --- a/core/os/keyboard.h +++ b/core/os/keyboard.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/os/main_loop.cpp b/core/os/main_loop.cpp index 644536d940..9f8fcccd82 100644 --- a/core/os/main_loop.cpp +++ b/core/os/main_loop.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/os/main_loop.h b/core/os/main_loop.h index a33aeb9762..a53137afa4 100644 --- a/core/os/main_loop.h +++ b/core/os/main_loop.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/os/memory.cpp b/core/os/memory.cpp index b6866561fc..069ee48fae 100644 --- a/core/os/memory.cpp +++ b/core/os/memory.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/os/memory.h b/core/os/memory.h index b788068f53..b3eb599955 100644 --- a/core/os/memory.h +++ b/core/os/memory.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/os/mutex.cpp b/core/os/mutex.cpp index cdc18effdd..134d313bdf 100644 --- a/core/os/mutex.cpp +++ b/core/os/mutex.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/os/mutex.h b/core/os/mutex.h index 8ec4f573b7..80a30b0b26 100644 --- a/core/os/mutex.h +++ b/core/os/mutex.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/os/os.cpp b/core/os/os.cpp index 03b48f4554..ab03bb8016 100644 --- a/core/os/os.cpp +++ b/core/os/os.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/os/os.h b/core/os/os.h index 0febfb70cf..0abc91e35e 100644 --- a/core/os/os.h +++ b/core/os/os.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/os/power.h b/core/os/power.h index 9e70e82f5d..dbf4c75c59 100644 --- a/core/os/power.h +++ b/core/os/power.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/os/rw_lock.cpp b/core/os/rw_lock.cpp index 83f8a9ffde..0427374de4 100644 --- a/core/os/rw_lock.cpp +++ b/core/os/rw_lock.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/os/rw_lock.h b/core/os/rw_lock.h index 6d3079df51..253bd260ee 100644 --- a/core/os/rw_lock.h +++ b/core/os/rw_lock.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/os/semaphore.cpp b/core/os/semaphore.cpp index 6bbae72f63..ce75186001 100644 --- a/core/os/semaphore.cpp +++ b/core/os/semaphore.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/os/semaphore.h b/core/os/semaphore.h index 8956fb7c39..f2be966979 100644 --- a/core/os/semaphore.h +++ b/core/os/semaphore.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/os/shell.cpp b/core/os/shell.cpp index 77726afd9d..9bf2d4466d 100644 --- a/core/os/shell.cpp +++ b/core/os/shell.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/os/shell.h b/core/os/shell.h index b2b0aa2260..33044ee10e 100644 --- a/core/os/shell.h +++ b/core/os/shell.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/os/thread.cpp b/core/os/thread.cpp index 1c6ccaa504..98f1968629 100644 --- a/core/os/thread.cpp +++ b/core/os/thread.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/os/thread.h b/core/os/thread.h index 9e0ab93cb9..3ad5d4bf2c 100644 --- a/core/os/thread.h +++ b/core/os/thread.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/os/thread_dummy.cpp b/core/os/thread_dummy.cpp index a17f7f09a8..88c111297d 100644 --- a/core/os/thread_dummy.cpp +++ b/core/os/thread_dummy.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/os/thread_dummy.h b/core/os/thread_dummy.h index 8d0ca0340d..4155103bbf 100644 --- a/core/os/thread_dummy.h +++ b/core/os/thread_dummy.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/os/thread_safe.cpp b/core/os/thread_safe.cpp index ebdf86733c..486e072985 100644 --- a/core/os/thread_safe.cpp +++ b/core/os/thread_safe.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/os/thread_safe.h b/core/os/thread_safe.h index a60773e8ed..0cecf33cc2 100644 --- a/core/os/thread_safe.h +++ b/core/os/thread_safe.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/packed_data_container.cpp b/core/packed_data_container.cpp index b2922a6173..addb0841f4 100644 --- a/core/packed_data_container.cpp +++ b/core/packed_data_container.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/packed_data_container.h b/core/packed_data_container.h index b7ce505836..bab994fc94 100644 --- a/core/packed_data_container.h +++ b/core/packed_data_container.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/pair.h b/core/pair.h index faa3febfd4..761caf7791 100644 --- a/core/pair.h +++ b/core/pair.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/path_db.cpp b/core/path_db.cpp index 239a2d7654..d5c84a2457 100644 --- a/core/path_db.cpp +++ b/core/path_db.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/path_db.h b/core/path_db.h index eec29676e2..1aed7535ca 100644 --- a/core/path_db.h +++ b/core/path_db.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/path_remap.cpp b/core/path_remap.cpp index bd76790b85..c5961213e8 100644 --- a/core/path_remap.cpp +++ b/core/path_remap.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/path_remap.h b/core/path_remap.h index 966bb10ea5..95249c6334 100644 --- a/core/path_remap.h +++ b/core/path_remap.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/pool_allocator.cpp b/core/pool_allocator.cpp index df55a5f615..d563925f3b 100644 --- a/core/pool_allocator.cpp +++ b/core/pool_allocator.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/pool_allocator.h b/core/pool_allocator.h index 1dc6167ceb..f62e410e66 100644 --- a/core/pool_allocator.h +++ b/core/pool_allocator.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/print_string.cpp b/core/print_string.cpp index 1cb07802c5..4a4c8093ca 100644 --- a/core/print_string.cpp +++ b/core/print_string.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/print_string.h b/core/print_string.h index ddbe55f8ed..c4cd610856 100644 --- a/core/print_string.h +++ b/core/print_string.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/ref_ptr.cpp b/core/ref_ptr.cpp index 867d0b9246..c2128fd45d 100644 --- a/core/ref_ptr.cpp +++ b/core/ref_ptr.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/ref_ptr.h b/core/ref_ptr.h index 04c7bb51ed..b76bbab7fa 100644 --- a/core/ref_ptr.h +++ b/core/ref_ptr.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/reference.cpp b/core/reference.cpp index 5285888f78..c55f8a7fe3 100644 --- a/core/reference.cpp +++ b/core/reference.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/reference.h b/core/reference.h index af7071a198..afc097817a 100644 --- a/core/reference.h +++ b/core/reference.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/register_core_types.cpp b/core/register_core_types.cpp index 7ebacb5b5d..4d12e42895 100644 --- a/core/register_core_types.cpp +++ b/core/register_core_types.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/register_core_types.h b/core/register_core_types.h index c664d0ebf4..794c45dff0 100644 --- a/core/register_core_types.h +++ b/core/register_core_types.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/resource.cpp b/core/resource.cpp index e9ce4038d9..aa070558f5 100644 --- a/core/resource.cpp +++ b/core/resource.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/resource.h b/core/resource.h index 96a3a16fc5..ab3404df8f 100644 --- a/core/resource.h +++ b/core/resource.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/rid.cpp b/core/rid.cpp index 1c673f8ba2..ca1d2be421 100644 --- a/core/rid.cpp +++ b/core/rid.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/rid.h b/core/rid.h index 2711ac6598..a93d7d912e 100644 --- a/core/rid.h +++ b/core/rid.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/ring_buffer.h b/core/ring_buffer.h index 3c13cb8d1e..d5085e9560 100644 --- a/core/ring_buffer.h +++ b/core/ring_buffer.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/safe_refcount.cpp b/core/safe_refcount.cpp index cbd79a322f..e4a5a994e6 100644 --- a/core/safe_refcount.cpp +++ b/core/safe_refcount.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/safe_refcount.h b/core/safe_refcount.h index eeadeea8cf..d30f563b56 100644 --- a/core/safe_refcount.h +++ b/core/safe_refcount.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/script_debugger_local.cpp b/core/script_debugger_local.cpp index b5ed9773f0..d2ccf495ae 100644 --- a/core/script_debugger_local.cpp +++ b/core/script_debugger_local.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/script_debugger_local.h b/core/script_debugger_local.h index b3b323c7a6..d32edb503b 100644 --- a/core/script_debugger_local.h +++ b/core/script_debugger_local.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/script_debugger_remote.cpp b/core/script_debugger_remote.cpp index 35e7f03f0e..bd0352b7a4 100644 --- a/core/script_debugger_remote.cpp +++ b/core/script_debugger_remote.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/script_debugger_remote.h b/core/script_debugger_remote.h index 9bdf116495..924e3774a2 100644 --- a/core/script_debugger_remote.h +++ b/core/script_debugger_remote.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/script_language.cpp b/core/script_language.cpp index 2d565571a7..72f0acec3b 100644 --- a/core/script_language.cpp +++ b/core/script_language.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/script_language.h b/core/script_language.h index 88584e4ef9..905ac4eeda 100644 --- a/core/script_language.h +++ b/core/script_language.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/self_list.h b/core/self_list.h index 45986d77e9..9edf735f7b 100644 --- a/core/self_list.h +++ b/core/self_list.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/set.h b/core/set.h index e6ec64e787..6e6f07508c 100644 --- a/core/set.h +++ b/core/set.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/simple_type.h b/core/simple_type.h index b5182559d7..6003bd393f 100644 --- a/core/simple_type.h +++ b/core/simple_type.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/sort.h b/core/sort.h index 8ec1cc6bd1..a45eb8865a 100644 --- a/core/sort.h +++ b/core/sort.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/string_db.cpp b/core/string_db.cpp index 54535fa06b..c61fbba9b5 100644 --- a/core/string_db.cpp +++ b/core/string_db.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/string_db.h b/core/string_db.h index b8f8d6f3dc..18af9fb3a7 100644 --- a/core/string_db.h +++ b/core/string_db.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/translation.cpp b/core/translation.cpp index 013f46f54f..65dd083902 100644 --- a/core/translation.cpp +++ b/core/translation.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/translation.h b/core/translation.h index 90ec3fddce..577282b45f 100644 --- a/core/translation.h +++ b/core/translation.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/typedefs.h b/core/typedefs.h index 469c9ebd95..335f576bce 100644 --- a/core/typedefs.h +++ b/core/typedefs.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/ucaps.h b/core/ucaps.h index 0e4b5709e6..cd4a581a49 100644 --- a/core/ucaps.h +++ b/core/ucaps.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/undo_redo.cpp b/core/undo_redo.cpp index 76eee40b9c..b3ac9d274e 100644 --- a/core/undo_redo.cpp +++ b/core/undo_redo.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/undo_redo.h b/core/undo_redo.h index 30601fa321..5b79f957da 100644 --- a/core/undo_redo.h +++ b/core/undo_redo.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/ustring.cpp b/core/ustring.cpp index db85db28ef..d2d4b6507f 100644 --- a/core/ustring.cpp +++ b/core/ustring.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/ustring.h b/core/ustring.h index 6a69d8b147..9ee3c2042c 100644 --- a/core/ustring.h +++ b/core/ustring.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/variant.cpp b/core/variant.cpp index 6d98ba7306..6e675d07de 100644 --- a/core/variant.cpp +++ b/core/variant.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/variant.h b/core/variant.h index c9f7ada3ac..e1a2b89a07 100644 --- a/core/variant.h +++ b/core/variant.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/variant_call.cpp b/core/variant_call.cpp index 9c435ea0e5..e87dfd2768 100644 --- a/core/variant_call.cpp +++ b/core/variant_call.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/variant_construct_string.cpp b/core/variant_construct_string.cpp index 7f176749d3..45fe367ce6 100644 --- a/core/variant_construct_string.cpp +++ b/core/variant_construct_string.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/variant_op.cpp b/core/variant_op.cpp index 71d03b159e..e8274d10af 100644 --- a/core/variant_op.cpp +++ b/core/variant_op.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/variant_parser.cpp b/core/variant_parser.cpp index 67e4673ad6..5e12b230be 100644 --- a/core/variant_parser.cpp +++ b/core/variant_parser.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -755,7 +756,7 @@ Error VariantParser::parse_value(Token &token, Variant &value, Stream *p_stream, Image::Format format = Image::FORMAT_MAX; for (int i = 0; i < Image::FORMAT_MAX; i++) { - if (Image::get_format_name(format) == sformat) { + if (Image::get_format_name(Image::Format(i)) == sformat) { format = Image::Format(i); } } diff --git a/core/variant_parser.h b/core/variant_parser.h index 20cc72f20d..acbe0e967f 100644 --- a/core/variant_parser.h +++ b/core/variant_parser.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/vector.h b/core/vector.h index b7b6b92ed0..fe1c1b05dd 100644 --- a/core/vector.h +++ b/core/vector.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/vmap.h b/core/vmap.h index 8446015568..ad07973308 100644 --- a/core/vmap.h +++ b/core/vmap.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/core/vset.h b/core/vset.h index e7e204115f..73062e064c 100644 --- a/core/vset.h +++ b/core/vset.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/doc/base/classes.xml b/doc/base/classes.xml index 5bb85aedc1..f108a48310 100644 --- a/doc/base/classes.xml +++ b/doc/base/classes.xml @@ -1,5 +1,15 @@ <?xml version="1.0" encoding="UTF-8" ?> <doc version="3.0.alpha.custom_build" name="Engine Types"> +<class name="@DLScript" category="Core"> + <brief_description> + </brief_description> + <description> + </description> + <methods> + </methods> + <constants> + </constants> +</class> <class name="@GDScript" category="Core"> <brief_description> Built-in GDScript functions. @@ -1959,6 +1969,22 @@ <description> </description> <methods> + <method name="_compute_cost" qualifiers="virtual"> + <argument index="0" name="from_id" type="int"> + </argument> + <argument index="1" name="to_id" type="int"> + </argument> + <description> + </description> + </method> + <method name="_estimate_cost" qualifiers="virtual"> + <argument index="0" name="from_id" type="int"> + </argument> + <argument index="1" name="to_id" type="int"> + </argument> + <description> + </description> + </method> <method name="add_point"> <argument index="0" name="id" type="int"> </argument> @@ -8381,7 +8407,7 @@ </description> </method> <method name="get_material" qualifiers="const"> - <return type="CanvasItemMaterial"> + <return type="ShaderMaterial"> </return> <description> Get the material of this item. @@ -8519,7 +8545,7 @@ </description> </method> <method name="set_material"> - <argument index="0" name="material" type="CanvasItemMaterial"> + <argument index="0" name="material" type="ShaderMaterial"> </argument> <description> Set the material of this item. @@ -8580,7 +8606,7 @@ <members> <member name="light_mask" type="int" setter="set_light_mask" getter="get_light_mask" brief=""> </member> - <member name="material" type="CanvasItemMaterial" setter="set_material" getter="get_material" brief=""> + <member name="material" type="ShaderMaterial" setter="set_material" getter="get_material" brief=""> </member> <member name="modulate" type="Color" setter="set_modulate" getter="get_modulate" brief=""> </member> @@ -8650,52 +8676,6 @@ </constant> </constants> </class> -<class name="CanvasItemMaterial" inherits="Material" category="Core"> - <brief_description> - </brief_description> - <description> - </description> - <methods> - <method name="get_shader" qualifiers="const"> - <return type="Shader"> - </return> - <description> - </description> - </method> - <method name="get_shader_param" qualifiers="const"> - <argument index="0" name="param" type="String"> - </argument> - <description> - </description> - </method> - <method name="set_shader"> - <argument index="0" name="shader" type="Shader"> - </argument> - <description> - </description> - </method> - <method name="set_shader_param"> - <argument index="0" name="param" type="String"> - </argument> - <argument index="1" name="value" type="Variant"> - </argument> - <description> - </description> - </method> - </methods> - <constants> - </constants> -</class> -<class name="CanvasItemShader" inherits="Shader" category="Core"> - <brief_description> - </brief_description> - <description> - </description> - <methods> - </methods> - <constants> - </constants> -</class> <class name="CanvasLayer" inherits="Node" category="Core"> <brief_description> Canvas Item layer. @@ -11191,7 +11171,7 @@ <argument index="0" name="filter" type="int"> </argument> <description> - Set when the control is ignoring mouse events (even touchpad events send mouse events). (see the MOUSE_FILTER_* constants) + Set when the control is ignoring mouse events (even touchpad events send mouse events). (see the MOUSE_FILTER_* constants) </description> </method> <method name="set_pos"> @@ -12007,6 +11987,134 @@ <constants> </constants> </class> +<class name="CurveTexture" inherits="Texture" category="Core"> + <brief_description> + </brief_description> + <description> + </description> + <methods> + <method name="get_max" qualifiers="const"> + <return type="float"> + </return> + <description> + </description> + </method> + <method name="get_min" qualifiers="const"> + <return type="float"> + </return> + <description> + </description> + </method> + <method name="get_points" qualifiers="const"> + <return type="PoolVector2Array"> + </return> + <description> + </description> + </method> + <method name="set_max"> + <argument index="0" name="max" type="float"> + </argument> + <description> + </description> + </method> + <method name="set_min"> + <argument index="0" name="min" type="float"> + </argument> + <description> + </description> + </method> + <method name="set_points"> + <argument index="0" name="points" type="PoolVector2Array"> + </argument> + <description> + </description> + </method> + <method name="set_width"> + <argument index="0" name="width" type="int"> + </argument> + <description> + </description> + </method> + </methods> + <members> + <member name="max" type="float" setter="set_max" getter="get_max" brief=""> + </member> + <member name="min" type="float" setter="set_min" getter="get_min" brief=""> + </member> + <member name="points" type="PoolVector2Array" setter="set_points" getter="get_points" brief=""> + </member> + <member name="width" type="int" setter="set_width" getter="get_width" brief=""> + </member> + </members> + <constants> + </constants> +</class> +<class name="DLLibrary" inherits="Resource" category="Core"> + <brief_description> + </brief_description> + <description> + </description> + <methods> + <method name="get_platform_file" qualifiers="const"> + <return type="String"> + </return> + <argument index="0" name="platform" type="String"> + </argument> + <description> + </description> + </method> + <method name="set_platform_file"> + <argument index="0" name="platform" type="String"> + </argument> + <argument index="1" name="file" type="String"> + </argument> + <description> + </description> + </method> + </methods> + <constants> + </constants> +</class> +<class name="DLScript" inherits="Script" category="Core"> + <brief_description> + </brief_description> + <description> + </description> + <methods> + <method name="get_library" qualifiers="const"> + <return type="Object"> + </return> + <description> + </description> + </method> + <method name="get_script_name" qualifiers="const"> + <return type="String"> + </return> + <description> + </description> + </method> + <method name="set_library"> + <argument index="0" name="library" type="Object"> + </argument> + <description> + </description> + </method> + <method name="set_script_name"> + <argument index="0" name="script_name" type="String"> + </argument> + <description> + </description> + </method> + </methods> + <members> + <member name="library" type="DLLibrary" setter="set_library" getter="get_library" brief=""> + </member> + <member name="script_name" type="String" setter="set_script_name" getter="get_script_name" brief=""> + </member> + </members> + <constants> + </constants> +</class> <class name="DampedSpringJoint2D" inherits="Joint2D" category="Core"> <brief_description> Damped spring constraint for 2D physics. @@ -15155,640 +15263,6 @@ </theme_item> </theme_items> </class> -<class name="FixedSpatialMaterial" inherits="Material" category="Core"> - <brief_description> - Simple Material with a fixed parameter set. - </brief_description> - <description> - FixedSpatialMaterial is a simple type of material [Resource], which contains a fixed amount of parameters. It is the only type of material supported in fixed-pipeline devices and APIs. It is also an often a better alternative to [ShaderMaterial] for most simple use cases. - </description> - <methods> - <method name="get_albedo" qualifiers="const"> - <return type="Color"> - </return> - <description> - </description> - </method> - <method name="get_anisotropy" qualifiers="const"> - <return type="float"> - </return> - <description> - </description> - </method> - <method name="get_blend_mode" qualifiers="const"> - <return type="int"> - </return> - <description> - </description> - </method> - <method name="get_clearcoat" qualifiers="const"> - <return type="float"> - </return> - <description> - </description> - </method> - <method name="get_clearcoat_gloss" qualifiers="const"> - <return type="float"> - </return> - <description> - </description> - </method> - <method name="get_cull_mode" qualifiers="const"> - <return type="int"> - </return> - <description> - </description> - </method> - <method name="get_depth_draw_mode" qualifiers="const"> - <return type="int"> - </return> - <description> - </description> - </method> - <method name="get_detail_blend_mode" qualifiers="const"> - <return type="int"> - </return> - <description> - </description> - </method> - <method name="get_detail_uv" qualifiers="const"> - <return type="int"> - </return> - <description> - </description> - </method> - <method name="get_diffuse_mode" qualifiers="const"> - <return type="int"> - </return> - <description> - </description> - </method> - <method name="get_emission" qualifiers="const"> - <return type="Color"> - </return> - <description> - </description> - </method> - <method name="get_emission_energy" qualifiers="const"> - <return type="float"> - </return> - <description> - </description> - </method> - <method name="get_feature" qualifiers="const"> - <return type="bool"> - </return> - <argument index="0" name="feature" type="int"> - </argument> - <description> - </description> - </method> - <method name="get_flag" qualifiers="const"> - <return type="bool"> - </return> - <argument index="0" name="arg0" type="int"> - </argument> - <description> - </description> - </method> - <method name="get_height_scale" qualifiers="const"> - <return type="float"> - </return> - <description> - </description> - </method> - <method name="get_line_width" qualifiers="const"> - <return type="float"> - </return> - <description> - </description> - </method> - <method name="get_metalness" qualifiers="const"> - <return type="float"> - </return> - <description> - </description> - </method> - <method name="get_normal_scale" qualifiers="const"> - <return type="float"> - </return> - <description> - </description> - </method> - <method name="get_point_size" qualifiers="const"> - <return type="float"> - </return> - <description> - </description> - </method> - <method name="get_refraction" qualifiers="const"> - <return type="float"> - </return> - <description> - </description> - </method> - <method name="get_refraction_roughness" qualifiers="const"> - <return type="float"> - </return> - <description> - </description> - </method> - <method name="get_rim" qualifiers="const"> - <return type="float"> - </return> - <description> - </description> - </method> - <method name="get_rim_tint" qualifiers="const"> - <return type="float"> - </return> - <description> - </description> - </method> - <method name="get_roughness" qualifiers="const"> - <return type="float"> - </return> - <description> - </description> - </method> - <method name="get_specular" qualifiers="const"> - <return type="Color"> - </return> - <description> - </description> - </method> - <method name="get_specular_mode" qualifiers="const"> - <return type="int"> - </return> - <description> - </description> - </method> - <method name="get_subsurface_scattering_strength" qualifiers="const"> - <return type="float"> - </return> - <description> - </description> - </method> - <method name="get_texture" qualifiers="const"> - <return type="Texture"> - </return> - <argument index="0" name="param" type="Texture"> - </argument> - <description> - </description> - </method> - <method name="get_uv1_offset" qualifiers="const"> - <return type="Vector2"> - </return> - <description> - </description> - </method> - <method name="get_uv1_scale" qualifiers="const"> - <return type="Vector2"> - </return> - <description> - </description> - </method> - <method name="get_uv2_offset" qualifiers="const"> - <return type="Vector2"> - </return> - <description> - </description> - </method> - <method name="get_uv2_scale" qualifiers="const"> - <return type="Vector2"> - </return> - <description> - </description> - </method> - <method name="set_albedo"> - <argument index="0" name="albedo" type="Color"> - </argument> - <description> - </description> - </method> - <method name="set_anisotropy"> - <argument index="0" name="anisotropy" type="float"> - </argument> - <description> - </description> - </method> - <method name="set_blend_mode"> - <argument index="0" name="blend_mode" type="int"> - </argument> - <description> - </description> - </method> - <method name="set_clearcoat"> - <argument index="0" name="clearcoat" type="float"> - </argument> - <description> - </description> - </method> - <method name="set_clearcoat_gloss"> - <argument index="0" name="clearcoat_gloss" type="float"> - </argument> - <description> - </description> - </method> - <method name="set_cull_mode"> - <argument index="0" name="cull_mode" type="int"> - </argument> - <description> - </description> - </method> - <method name="set_depth_draw_mode"> - <argument index="0" name="depth_draw_mode" type="int"> - </argument> - <description> - </description> - </method> - <method name="set_detail_blend_mode"> - <argument index="0" name="detail_blend_mode" type="int"> - </argument> - <description> - </description> - </method> - <method name="set_detail_uv"> - <argument index="0" name="detail_uv" type="int"> - </argument> - <description> - </description> - </method> - <method name="set_diffuse_mode"> - <argument index="0" name="diffuse_mode" type="int"> - </argument> - <description> - </description> - </method> - <method name="set_emission"> - <argument index="0" name="emission" type="Color"> - </argument> - <description> - </description> - </method> - <method name="set_emission_energy"> - <argument index="0" name="emission_energy" type="float"> - </argument> - <description> - </description> - </method> - <method name="set_feature"> - <argument index="0" name="feature" type="int"> - </argument> - <argument index="1" name="enable" type="bool"> - </argument> - <description> - </description> - </method> - <method name="set_flag"> - <argument index="0" name="flag" type="int"> - </argument> - <argument index="1" name="enable" type="bool"> - </argument> - <description> - </description> - </method> - <method name="set_height_scale"> - <argument index="0" name="height_scale" type="float"> - </argument> - <description> - </description> - </method> - <method name="set_line_width"> - <argument index="0" name="line_width" type="float"> - </argument> - <description> - </description> - </method> - <method name="set_metalness"> - <argument index="0" name="metalness" type="float"> - </argument> - <description> - </description> - </method> - <method name="set_normal_scale"> - <argument index="0" name="normal_scale" type="float"> - </argument> - <description> - </description> - </method> - <method name="set_point_size"> - <argument index="0" name="point_size" type="float"> - </argument> - <description> - </description> - </method> - <method name="set_refraction"> - <argument index="0" name="refraction" type="float"> - </argument> - <description> - </description> - </method> - <method name="set_refraction_roughness"> - <argument index="0" name="refraction_roughness" type="float"> - </argument> - <description> - </description> - </method> - <method name="set_rim"> - <argument index="0" name="rim" type="float"> - </argument> - <description> - </description> - </method> - <method name="set_rim_tint"> - <argument index="0" name="rim_tint" type="float"> - </argument> - <description> - </description> - </method> - <method name="set_roughness"> - <argument index="0" name="roughness" type="float"> - </argument> - <description> - </description> - </method> - <method name="set_specular"> - <argument index="0" name="specular" type="Color"> - </argument> - <description> - </description> - </method> - <method name="set_specular_mode"> - <argument index="0" name="specular_mode" type="int"> - </argument> - <description> - </description> - </method> - <method name="set_subsurface_scattering_strength"> - <argument index="0" name="strength" type="float"> - </argument> - <description> - </description> - </method> - <method name="set_texture"> - <argument index="0" name="param" type="Texture"> - </argument> - <argument index="1" name="texture" type="Object"> - </argument> - <description> - </description> - </method> - <method name="set_uv1_offset"> - <argument index="0" name="offset" type="Vector2"> - </argument> - <description> - </description> - </method> - <method name="set_uv1_scale"> - <argument index="0" name="scale" type="Vector2"> - </argument> - <description> - </description> - </method> - <method name="set_uv2_offset"> - <argument index="0" name="offset" type="Vector2"> - </argument> - <description> - </description> - </method> - <method name="set_uv2_scale"> - <argument index="0" name="scale" type="Vector2"> - </argument> - <description> - </description> - </method> - </methods> - <members> - <member name="albedo_color" type="Color" setter="set_albedo" getter="get_albedo" brief=""> - </member> - <member name="albedo_texture" type="Texture" setter="set_texture" getter="get_texture" brief=""> - </member> - <member name="anisotropy_anisotropy" type="float" setter="set_anisotropy" getter="get_anisotropy" brief=""> - </member> - <member name="anisotropy_enabled" type="bool" setter="set_feature" getter="get_feature" brief=""> - </member> - <member name="anisotropy_flowmap" type="Texture" setter="set_texture" getter="get_texture" brief=""> - </member> - <member name="ao_enabled" type="bool" setter="set_feature" getter="get_feature" brief=""> - </member> - <member name="ao_texture" type="Texture" setter="set_texture" getter="get_texture" brief=""> - </member> - <member name="clearcoat_amount" type="float" setter="set_clearcoat" getter="get_clearcoat" brief=""> - </member> - <member name="clearcoat_enabled" type="bool" setter="set_feature" getter="get_feature" brief=""> - </member> - <member name="clearcoat_gloss" type="float" setter="set_clearcoat_gloss" getter="get_clearcoat_gloss" brief=""> - </member> - <member name="clearcoat_texture" type="Texture" setter="set_texture" getter="get_texture" brief=""> - </member> - <member name="detail_albedo" type="Texture" setter="set_texture" getter="get_texture" brief=""> - </member> - <member name="detail_blend_mode" type="int" setter="set_detail_blend_mode" getter="get_detail_blend_mode" brief=""> - </member> - <member name="detail_enabled" type="bool" setter="set_feature" getter="get_feature" brief=""> - </member> - <member name="detail_mask" type="Texture" setter="set_texture" getter="get_texture" brief=""> - </member> - <member name="detail_normal" type="Texture" setter="set_texture" getter="get_texture" brief=""> - </member> - <member name="detail_uv_layer" type="int" setter="set_detail_uv" getter="get_detail_uv" brief=""> - </member> - <member name="emission_color" type="Color" setter="set_emission" getter="get_emission" brief=""> - </member> - <member name="emission_enabled" type="bool" setter="set_feature" getter="get_feature" brief=""> - </member> - <member name="emission_energy" type="float" setter="set_emission_energy" getter="get_emission_energy" brief=""> - </member> - <member name="emission_texture" type="Texture" setter="set_texture" getter="get_texture" brief=""> - </member> - <member name="flags_on_top" type="bool" setter="set_flag" getter="get_flag" brief=""> - </member> - <member name="flags_transparent" type="bool" setter="set_feature" getter="get_feature" brief=""> - </member> - <member name="flags_unshaded" type="bool" setter="set_flag" getter="get_flag" brief=""> - </member> - <member name="flags_use_point_size" type="bool" setter="set_flag" getter="get_flag" brief=""> - </member> - <member name="height_enabled" type="bool" setter="set_feature" getter="get_feature" brief=""> - </member> - <member name="height_scale" type="float" setter="set_height_scale" getter="get_height_scale" brief=""> - </member> - <member name="height_texture" type="Texture" setter="set_texture" getter="get_texture" brief=""> - </member> - <member name="normal_enabled" type="bool" setter="set_feature" getter="get_feature" brief=""> - </member> - <member name="normal_scale" type="float" setter="set_normal_scale" getter="get_normal_scale" brief=""> - </member> - <member name="normal_texture" type="Texture" setter="set_texture" getter="get_texture" brief=""> - </member> - <member name="params_blend_mode" type="int" setter="set_blend_mode" getter="get_blend_mode" brief=""> - </member> - <member name="params_cull_mode" type="int" setter="set_cull_mode" getter="get_cull_mode" brief=""> - </member> - <member name="params_depth_draw_mode" type="int" setter="set_depth_draw_mode" getter="get_depth_draw_mode" brief=""> - </member> - <member name="params_diffuse_mode" type="int" setter="set_diffuse_mode" getter="get_diffuse_mode" brief=""> - </member> - <member name="params_line_width" type="float" setter="set_line_width" getter="get_line_width" brief=""> - </member> - <member name="params_point_size" type="float" setter="set_point_size" getter="get_point_size" brief=""> - </member> - <member name="refraction_displacement" type="float" setter="set_refraction" getter="get_refraction" brief=""> - </member> - <member name="refraction_enabled" type="bool" setter="set_feature" getter="get_feature" brief=""> - </member> - <member name="refraction_roughness" type="float" setter="set_refraction_roughness" getter="get_refraction_roughness" brief=""> - </member> - <member name="refraction_texture" type="Texture" setter="set_texture" getter="get_texture" brief=""> - </member> - <member name="rim_amount" type="float" setter="set_rim" getter="get_rim" brief=""> - </member> - <member name="rim_enabled" type="bool" setter="set_feature" getter="get_feature" brief=""> - </member> - <member name="rim_texture" type="Texture" setter="set_texture" getter="get_texture" brief=""> - </member> - <member name="rim_tint" type="float" setter="set_rim_tint" getter="get_rim_tint" brief=""> - </member> - <member name="specular_color" type="Color" setter="set_specular" getter="get_specular" brief=""> - </member> - <member name="specular_metalness" type="float" setter="set_metalness" getter="get_metalness" brief=""> - </member> - <member name="specular_mode" type="int" setter="set_specular_mode" getter="get_specular_mode" brief=""> - </member> - <member name="specular_roughness" type="float" setter="set_roughness" getter="get_roughness" brief=""> - </member> - <member name="specular_texture" type="Texture" setter="set_texture" getter="get_texture" brief=""> - </member> - <member name="subsurf_scatter_enabled" type="bool" setter="set_feature" getter="get_feature" brief=""> - </member> - <member name="subsurf_scatter_strength" type="float" setter="set_subsurface_scattering_strength" getter="get_subsurface_scattering_strength" brief=""> - </member> - <member name="subsurf_scatter_texture" type="Texture" setter="set_texture" getter="get_texture" brief=""> - </member> - <member name="uv1_offset" type="Vector2" setter="set_uv1_offset" getter="get_uv1_offset" brief=""> - </member> - <member name="uv1_scale" type="Vector2" setter="set_uv1_scale" getter="get_uv1_scale" brief=""> - </member> - <member name="uv2_offset" type="Vector2" setter="set_uv2_offset" getter="get_uv2_offset" brief=""> - </member> - <member name="uv2_scale" type="Vector2" setter="set_uv2_scale" getter="get_uv2_scale" brief=""> - </member> - <member name="vertex_color_is_srgb" type="bool" setter="set_flag" getter="get_flag" brief=""> - </member> - <member name="vertex_color_use_as_albedo" type="bool" setter="set_flag" getter="get_flag" brief=""> - </member> - </members> - <constants> - <constant name="TEXTURE_ALBEDO" value="0"> - </constant> - <constant name="TEXTURE_SPECULAR" value="1"> - </constant> - <constant name="TEXTURE_EMISSION" value="2"> - </constant> - <constant name="TEXTURE_NORMAL" value="3"> - </constant> - <constant name="TEXTURE_RIM" value="4"> - </constant> - <constant name="TEXTURE_CLEARCOAT" value="5"> - </constant> - <constant name="TEXTURE_FLOWMAP" value="6"> - </constant> - <constant name="TEXTURE_AMBIENT_OCCLUSION" value="7"> - </constant> - <constant name="TEXTURE_HEIGHT" value="8"> - </constant> - <constant name="TEXTURE_SUBSURFACE_SCATTERING" value="9"> - </constant> - <constant name="TEXTURE_REFRACTION" value="10"> - </constant> - <constant name="TEXTURE_REFRACTION_ROUGHNESS" value="11"> - </constant> - <constant name="TEXTURE_DETAIL_MASK" value="12"> - </constant> - <constant name="TEXTURE_DETAIL_ALBEDO" value="13"> - </constant> - <constant name="TEXTURE_DETAIL_NORMAL" value="14"> - </constant> - <constant name="TEXTURE_MAX" value="15"> - </constant> - <constant name="DETAIL_UV_1" value="0"> - </constant> - <constant name="DETAIL_UV_2" value="1"> - </constant> - <constant name="FEATURE_TRANSPARENT" value="0"> - </constant> - <constant name="FEATURE_EMISSION" value="1"> - </constant> - <constant name="FEATURE_NORMAL_MAPPING" value="2"> - </constant> - <constant name="FEATURE_RIM" value="3"> - </constant> - <constant name="FEATURE_CLEARCOAT" value="4"> - </constant> - <constant name="FEATURE_ANISOTROPY" value="5"> - </constant> - <constant name="FEATURE_AMBIENT_OCCLUSION" value="6"> - </constant> - <constant name="FEATURE_HEIGHT_MAPPING" value="7"> - </constant> - <constant name="FEATURE_SUBSURACE_SCATTERING" value="8"> - </constant> - <constant name="FEATURE_REFRACTION" value="9"> - </constant> - <constant name="FEATURE_DETAIL" value="10"> - </constant> - <constant name="FEATURE_MAX" value="11"> - </constant> - <constant name="BLEND_MODE_MIX" value="0"> - </constant> - <constant name="BLEND_MODE_ADD" value="1"> - </constant> - <constant name="BLEND_MODE_SUB" value="2"> - </constant> - <constant name="BLEND_MODE_MUL" value="3"> - </constant> - <constant name="DEPTH_DRAW_OPAQUE_ONLY" value="0"> - </constant> - <constant name="DEPTH_DRAW_ALWAYS" value="1"> - </constant> - <constant name="DEPTH_DRAW_DISABLED" value="2"> - </constant> - <constant name="DEPTH_DRAW_ALPHA_OPAQUE_PREPASS" value="3"> - </constant> - <constant name="CULL_BACK" value="0"> - </constant> - <constant name="CULL_FRONT" value="1"> - </constant> - <constant name="CULL_DISABLED" value="2"> - </constant> - <constant name="FLAG_UNSHADED" value="0"> - </constant> - <constant name="FLAG_ONTOP" value="1"> - </constant> - <constant name="FLAG_ALBEDO_FROM_VERTEX_COLOR" value="2"> - </constant> - <constant name="FLAG_SRGB_VERTEX_COLOR" value="3"> - </constant> - <constant name="FLAG_USE_POINT_SIZE" value="4"> - </constant> - <constant name="FLAG_MAX" value="5"> - </constant> - <constant name="DIFFUSE_LAMBERT" value="0"> - </constant> - <constant name="DIFFUSE_LAMBERT_WRAP" value="1"> - </constant> - <constant name="DIFFUSE_OREN_NAYAR" value="2"> - </constant> - <constant name="DIFFUSE_BURLEY" value="3"> - </constant> - <constant name="SPECULAR_MODE_METALLIC" value="0"> - </constant> - <constant name="SPECULAR_MODE_SPECULAR" value="1"> - </constant> - </constants> -</class> <class name="Font" inherits="Resource" category="Core"> <brief_description> Internationalized font and text drawing support. @@ -16913,29 +16387,17 @@ </member> <member name="material_override" type="Material" setter="set_material_override" getter="get_material_override" brief=""> </member> - <member name="use_as_billboard" type="bool" setter="set_flag" getter="get_flag" brief=""> - </member> - <member name="use_as_y_billboard" type="bool" setter="set_flag" getter="get_flag" brief=""> - </member> - <member name="use_depth_scale" type="bool" setter="set_flag" getter="get_flag" brief=""> - </member> <member name="use_in_baked_light" type="bool" setter="set_flag" getter="get_flag" brief=""> </member> <member name="visible_in_all_rooms" type="bool" setter="set_flag" getter="get_flag" brief=""> </member> </members> <constants> - <constant name="FLAG_CAST_SHADOW" value="2"> + <constant name="FLAG_CAST_SHADOW" value="0"> </constant> - <constant name="FLAG_BILLBOARD" value="0"> + <constant name="FLAG_VISIBLE_IN_ALL_ROOMS" value="1"> </constant> - <constant name="FLAG_BILLBOARD_FIX_Y" value="1"> - </constant> - <constant name="FLAG_DEPH_SCALE" value="3"> - </constant> - <constant name="FLAG_VISIBLE_IN_ALL_ROOMS" value="4"> - </constant> - <constant name="FLAG_MAX" value="6"> + <constant name="FLAG_MAX" value="3"> </constant> <constant name="SHADOW_CASTING_SETTING_OFF" value="0"> </constant> @@ -17091,6 +16553,114 @@ <constants> </constants> </class> +<class name="GradientTexture" inherits="Texture" category="Core"> + <brief_description> + </brief_description> + <description> + </description> + <methods> + <method name="add_point"> + <argument index="0" name="offset" type="float"> + </argument> + <argument index="1" name="color" type="Color"> + </argument> + <description> + </description> + </method> + <method name="get_color" qualifiers="const"> + <return type="Color"> + </return> + <argument index="0" name="point" type="int"> + </argument> + <description> + </description> + </method> + <method name="get_colors" qualifiers="const"> + <return type="PoolColorArray"> + </return> + <description> + </description> + </method> + <method name="get_offset" qualifiers="const"> + <return type="float"> + </return> + <argument index="0" name="point" type="int"> + </argument> + <description> + </description> + </method> + <method name="get_offsets" qualifiers="const"> + <return type="PoolRealArray"> + </return> + <description> + </description> + </method> + <method name="get_point_count" qualifiers="const"> + <return type="int"> + </return> + <description> + </description> + </method> + <method name="interpolate"> + <return type="Color"> + </return> + <argument index="0" name="offset" type="float"> + </argument> + <description> + </description> + </method> + <method name="remove_point"> + <argument index="0" name="offset" type="int"> + </argument> + <description> + </description> + </method> + <method name="set_color"> + <argument index="0" name="point" type="int"> + </argument> + <argument index="1" name="color" type="Color"> + </argument> + <description> + </description> + </method> + <method name="set_colors"> + <argument index="0" name="colors" type="PoolColorArray"> + </argument> + <description> + </description> + </method> + <method name="set_offset"> + <argument index="0" name="point" type="int"> + </argument> + <argument index="1" name="offset" type="float"> + </argument> + <description> + </description> + </method> + <method name="set_offsets"> + <argument index="0" name="offsets" type="PoolRealArray"> + </argument> + <description> + </description> + </method> + <method name="set_width"> + <argument index="0" name="width" type="int"> + </argument> + <description> + </description> + </method> + </methods> + <members> + <member name="colors" type="float" setter="set_colors" getter="get_colors" brief=""> + </member> + <member name="offsets" type="float" setter="set_offsets" getter="get_offsets" brief=""> + </member> + <member name="width" type="int" setter="set_width" getter="get_width" brief=""> + </member> + </members> + <constants> + </constants> +</class> <class name="GraphEdit" inherits="Control" category="Core"> <brief_description> GraphEdit is an area capable of showing various GraphNodes. It manages connection events between them. @@ -26099,6 +25669,8 @@ </constant> <constant name="DUPLICATE_SCRIPTS" value="4"> </constant> + <constant name="DUPLICATE_USE_INSTANCING" value="8"> + </constant> </constants> </class> <class name="Node2D" inherits="CanvasItem" category="Core"> @@ -28486,6 +28058,246 @@ <constants> </constants> </class> +<class name="Particles" inherits="GeometryInstance" category="Core"> + <brief_description> + </brief_description> + <description> + </description> + <methods> + <method name="get_amount" qualifiers="const"> + <return type="int"> + </return> + <description> + </description> + </method> + <method name="get_custom_aabb" qualifiers="const"> + <return type="Rect3"> + </return> + <description> + </description> + </method> + <method name="get_draw_order" qualifiers="const"> + <return type="int"> + </return> + <description> + </description> + </method> + <method name="get_draw_pass_mesh" qualifiers="const"> + <return type="Mesh"> + </return> + <argument index="0" name="pass" type="int"> + </argument> + <description> + </description> + </method> + <method name="get_draw_passes" qualifiers="const"> + <return type="int"> + </return> + <description> + </description> + </method> + <method name="get_explosiveness_ratio" qualifiers="const"> + <return type="float"> + </return> + <description> + </description> + </method> + <method name="get_fixed_fps" qualifiers="const"> + <return type="int"> + </return> + <description> + </description> + </method> + <method name="get_fractional_delta" qualifiers="const"> + <return type="bool"> + </return> + <description> + </description> + </method> + <method name="get_gravity" qualifiers="const"> + <return type="Vector3"> + </return> + <description> + </description> + </method> + <method name="get_lifetime" qualifiers="const"> + <return type="float"> + </return> + <description> + </description> + </method> + <method name="get_pre_process_time" qualifiers="const"> + <return type="float"> + </return> + <description> + </description> + </method> + <method name="get_process_material" qualifiers="const"> + <return type="Material"> + </return> + <description> + </description> + </method> + <method name="get_randomness_ratio" qualifiers="const"> + <return type="float"> + </return> + <description> + </description> + </method> + <method name="get_use_local_coordinates" qualifiers="const"> + <return type="bool"> + </return> + <description> + </description> + </method> + <method name="is_emitting" qualifiers="const"> + <return type="bool"> + </return> + <description> + </description> + </method> + <method name="set_amount"> + <argument index="0" name="amount" type="int"> + </argument> + <description> + </description> + </method> + <method name="set_custom_aabb"> + <argument index="0" name="aabb" type="Rect3"> + </argument> + <description> + </description> + </method> + <method name="set_draw_order"> + <argument index="0" name="order" type="int"> + </argument> + <description> + </description> + </method> + <method name="set_draw_pass_mesh"> + <argument index="0" name="pass" type="int"> + </argument> + <argument index="1" name="mesh" type="Mesh"> + </argument> + <description> + </description> + </method> + <method name="set_draw_passes"> + <argument index="0" name="passes" type="int"> + </argument> + <description> + </description> + </method> + <method name="set_emitting"> + <argument index="0" name="emitting" type="bool"> + </argument> + <description> + </description> + </method> + <method name="set_explosiveness_ratio"> + <argument index="0" name="ratio" type="float"> + </argument> + <description> + </description> + </method> + <method name="set_fixed_fps"> + <argument index="0" name="fps" type="int"> + </argument> + <description> + </description> + </method> + <method name="set_fractional_delta"> + <argument index="0" name="enable" type="bool"> + </argument> + <description> + </description> + </method> + <method name="set_gravity"> + <argument index="0" name="accel_vec" type="Vector3"> + </argument> + <description> + </description> + </method> + <method name="set_lifetime"> + <argument index="0" name="secs" type="float"> + </argument> + <description> + </description> + </method> + <method name="set_pre_process_time"> + <argument index="0" name="secs" type="float"> + </argument> + <description> + </description> + </method> + <method name="set_process_material"> + <argument index="0" name="material" type="Material"> + </argument> + <description> + </description> + </method> + <method name="set_randomness_ratio"> + <argument index="0" name="ratio" type="float"> + </argument> + <description> + </description> + </method> + <method name="set_use_local_coordinates"> + <argument index="0" name="enable" type="bool"> + </argument> + <description> + </description> + </method> + </methods> + <members> + <member name="amount" type="int" setter="set_amount" getter="get_amount" brief=""> + </member> + <member name="custom_aabb" type="Rect3" setter="set_custom_aabb" getter="get_custom_aabb" brief=""> + </member> + <member name="draw_order" type="int" setter="set_draw_order" getter="get_draw_order" brief=""> + </member> + <member name="draw_pass_1" type="Mesh" setter="set_draw_pass_mesh" getter="get_draw_pass_mesh" brief=""> + </member> + <member name="draw_pass_2" type="Mesh" setter="set_draw_pass_mesh" getter="get_draw_pass_mesh" brief=""> + </member> + <member name="draw_pass_3" type="Mesh" setter="set_draw_pass_mesh" getter="get_draw_pass_mesh" brief=""> + </member> + <member name="draw_pass_4" type="Mesh" setter="set_draw_pass_mesh" getter="get_draw_pass_mesh" brief=""> + </member> + <member name="draw_passes" type="int" setter="set_draw_passes" getter="get_draw_passes" brief=""> + </member> + <member name="emitting" type="bool" setter="set_emitting" getter="is_emitting" brief=""> + </member> + <member name="explosiveness" type="float" setter="set_explosiveness_ratio" getter="get_explosiveness_ratio" brief=""> + </member> + <member name="fixed_fps" type="int" setter="set_fixed_fps" getter="get_fixed_fps" brief=""> + </member> + <member name="fract_delta" type="bool" setter="set_fractional_delta" getter="get_fractional_delta" brief=""> + </member> + <member name="gravity" type="Vector3" setter="set_gravity" getter="get_gravity" brief=""> + </member> + <member name="lifetime" type="float" setter="set_lifetime" getter="get_lifetime" brief=""> + </member> + <member name="local_coords" type="bool" setter="set_use_local_coordinates" getter="get_use_local_coordinates" brief=""> + </member> + <member name="preprocess" type="float" setter="set_pre_process_time" getter="get_pre_process_time" brief=""> + </member> + <member name="process_material" type="ParticlesMaterial,ShaderMaterial" setter="set_process_material" getter="get_process_material" brief=""> + </member> + <member name="randomness" type="float" setter="set_randomness_ratio" getter="get_randomness_ratio" brief=""> + </member> + </members> + <constants> + <constant name="DRAW_ORDER_INDEX" value="0"> + </constant> + <constant name="DRAW_ORDER_LIFETIME" value="1"> + </constant> + <constant name="DRAW_ORDER_VIEW_DEPTH" value="2"> + </constant> + <constant name="MAX_DRAW_PASSES" value="4"> + </constant> + </constants> +</class> <class name="Particles2D" inherits="Node2D" category="Core"> <brief_description> 2D Particle emitter @@ -29026,14 +28838,378 @@ </constant> </constants> </class> -<class name="ParticlesShader" inherits="Shader" category="Core"> +<class name="ParticlesMaterial" inherits="Material" category="Core"> <brief_description> </brief_description> <description> </description> <methods> + <method name="get_color" qualifiers="const"> + <return type="Color"> + </return> + <description> + </description> + </method> + <method name="get_color_ramp" qualifiers="const"> + <return type="Texture"> + </return> + <description> + </description> + </method> + <method name="get_emission_box_extents" qualifiers="const"> + <return type="Vector3"> + </return> + <description> + </description> + </method> + <method name="get_emission_normal_texture" qualifiers="const"> + <return type="Texture"> + </return> + <description> + </description> + </method> + <method name="get_emission_point_count" qualifiers="const"> + <return type="int"> + </return> + <description> + </description> + </method> + <method name="get_emission_point_texture" qualifiers="const"> + <return type="Texture"> + </return> + <description> + </description> + </method> + <method name="get_emission_shape" qualifiers="const"> + <return type="int"> + </return> + <description> + </description> + </method> + <method name="get_emission_sphere_radius" qualifiers="const"> + <return type="float"> + </return> + <description> + </description> + </method> + <method name="get_flag" qualifiers="const"> + <return type="bool"> + </return> + <argument index="0" name="flag" type="int"> + </argument> + <description> + </description> + </method> + <method name="get_flatness" qualifiers="const"> + <return type="float"> + </return> + <description> + </description> + </method> + <method name="get_param" qualifiers="const"> + <return type="float"> + </return> + <argument index="0" name="param" type="int"> + </argument> + <description> + </description> + </method> + <method name="get_param_randomness" qualifiers="const"> + <return type="float"> + </return> + <argument index="0" name="param" type="int"> + </argument> + <description> + </description> + </method> + <method name="get_param_texture" qualifiers="const"> + <return type="Object"> + </return> + <argument index="0" name="param" type="int"> + </argument> + <description> + </description> + </method> + <method name="get_spread" qualifiers="const"> + <return type="float"> + </return> + <description> + </description> + </method> + <method name="get_trail_color_modifier" qualifiers="const"> + <return type="GradientTexture"> + </return> + <description> + </description> + </method> + <method name="get_trail_divisor" qualifiers="const"> + <return type="int"> + </return> + <description> + </description> + </method> + <method name="get_trail_size_modifier" qualifiers="const"> + <return type="CurveTexture"> + </return> + <description> + </description> + </method> + <method name="set_color"> + <argument index="0" name="color" type="Color"> + </argument> + <description> + </description> + </method> + <method name="set_color_ramp"> + <argument index="0" name="ramp" type="Texture"> + </argument> + <description> + </description> + </method> + <method name="set_emission_box_extents"> + <argument index="0" name="extents" type="Vector3"> + </argument> + <description> + </description> + </method> + <method name="set_emission_normal_texture"> + <argument index="0" name="texture" type="Texture"> + </argument> + <description> + </description> + </method> + <method name="set_emission_point_count"> + <argument index="0" name="point_count" type="int"> + </argument> + <description> + </description> + </method> + <method name="set_emission_point_texture"> + <argument index="0" name="texture" type="Texture"> + </argument> + <description> + </description> + </method> + <method name="set_emission_shape"> + <argument index="0" name="shape" type="int"> + </argument> + <description> + </description> + </method> + <method name="set_emission_sphere_radius"> + <argument index="0" name="radius" type="float"> + </argument> + <description> + </description> + </method> + <method name="set_flag"> + <argument index="0" name="flag" type="int"> + </argument> + <argument index="1" name="enable" type="bool"> + </argument> + <description> + </description> + </method> + <method name="set_flatness"> + <argument index="0" name="amount" type="float"> + </argument> + <description> + </description> + </method> + <method name="set_param"> + <argument index="0" name="param" type="int"> + </argument> + <argument index="1" name="value" type="float"> + </argument> + <description> + </description> + </method> + <method name="set_param_randomness"> + <argument index="0" name="param" type="int"> + </argument> + <argument index="1" name="randomness" type="float"> + </argument> + <description> + </description> + </method> + <method name="set_param_texture"> + <argument index="0" name="param" type="int"> + </argument> + <argument index="1" name="texture" type="Object"> + </argument> + <description> + </description> + </method> + <method name="set_spread"> + <argument index="0" name="degrees" type="float"> + </argument> + <description> + </description> + </method> + <method name="set_trail_color_modifier"> + <argument index="0" name="texture" type="GradientTexture"> + </argument> + <description> + </description> + </method> + <method name="set_trail_divisor"> + <argument index="0" name="divisor" type="int"> + </argument> + <description> + </description> + </method> + <method name="set_trail_size_modifier"> + <argument index="0" name="texture" type="CurveTexture"> + </argument> + <description> + </description> + </method> </methods> + <members> + <member name="angle" type="float" setter="set_param" getter="get_param" brief=""> + </member> + <member name="angle_curve" type="CurveTexture" setter="set_param_texture" getter="get_param_texture" brief=""> + </member> + <member name="angle_random" type="float" setter="set_param_randomness" getter="get_param_randomness" brief=""> + </member> + <member name="angular_velocity" type="float" setter="set_param" getter="get_param" brief=""> + </member> + <member name="angular_velocity_curve" type="CurveTexture" setter="set_param_texture" getter="get_param_texture" brief=""> + </member> + <member name="angular_velocity_random" type="float" setter="set_param_randomness" getter="get_param_randomness" brief=""> + </member> + <member name="anim_offset" type="float" setter="set_param" getter="get_param" brief=""> + </member> + <member name="anim_offset_curve" type="CurveTexture" setter="set_param_texture" getter="get_param_texture" brief=""> + </member> + <member name="anim_offset_random" type="float" setter="set_param_randomness" getter="get_param_randomness" brief=""> + </member> + <member name="anim_speed" type="float" setter="set_param" getter="get_param" brief=""> + </member> + <member name="anim_speed_curve" type="CurveTexture" setter="set_param_texture" getter="get_param_texture" brief=""> + </member> + <member name="anim_speed_random" type="float" setter="set_param_randomness" getter="get_param_randomness" brief=""> + </member> + <member name="color" type="Color" setter="set_color" getter="get_color" brief=""> + </member> + <member name="color_ramp" type="GradientTexture" setter="set_color_ramp" getter="get_color_ramp" brief=""> + </member> + <member name="damping" type="float" setter="set_param" getter="get_param" brief=""> + </member> + <member name="damping_curve" type="CurveTexture" setter="set_param_texture" getter="get_param_texture" brief=""> + </member> + <member name="damping_random" type="float" setter="set_param_randomness" getter="get_param_randomness" brief=""> + </member> + <member name="emission_box_extents" type="Vector3" setter="set_emission_box_extents" getter="get_emission_box_extents" brief=""> + </member> + <member name="emission_normal_texture" type="Texture" setter="set_emission_normal_texture" getter="get_emission_normal_texture" brief=""> + </member> + <member name="emission_point_count" type="int" setter="set_emission_point_count" getter="get_emission_point_count" brief=""> + </member> + <member name="emission_point_texture" type="Texture" setter="set_emission_point_texture" getter="get_emission_point_texture" brief=""> + </member> + <member name="emission_shape" type="int" setter="set_emission_shape" getter="get_emission_shape" brief=""> + </member> + <member name="emission_sphere_radius" type="float" setter="set_emission_sphere_radius" getter="get_emission_sphere_radius" brief=""> + </member> + <member name="flag_align_y" type="bool" setter="set_flag" getter="get_flag" brief=""> + </member> + <member name="flag_rotate_y" type="bool" setter="set_flag" getter="get_flag" brief=""> + </member> + <member name="flatness" type="float" setter="set_flatness" getter="get_flatness" brief=""> + </member> + <member name="hue_variation" type="float" setter="set_param" getter="get_param" brief=""> + </member> + <member name="hue_variation_curve" type="CurveTexture" setter="set_param_texture" getter="get_param_texture" brief=""> + </member> + <member name="hue_variation_random" type="float" setter="set_param_randomness" getter="get_param_randomness" brief=""> + </member> + <member name="initial_velocity" type="float" setter="set_param" getter="get_param" brief=""> + </member> + <member name="initial_velocity_random" type="float" setter="set_param_randomness" getter="get_param_randomness" brief=""> + </member> + <member name="linear_accel" type="float" setter="set_param" getter="get_param" brief=""> + </member> + <member name="linear_accel_curve" type="CurveTexture" setter="set_param_texture" getter="get_param_texture" brief=""> + </member> + <member name="linear_accel_random" type="float" setter="set_param_randomness" getter="get_param_randomness" brief=""> + </member> + <member name="orbit_velocity" type="float" setter="set_param" getter="get_param" brief=""> + </member> + <member name="orbit_velocity_curve" type="CurveTexture" setter="set_param_texture" getter="get_param_texture" brief=""> + </member> + <member name="orbit_velocity_random" type="float" setter="set_param_randomness" getter="get_param_randomness" brief=""> + </member> + <member name="radial_accel" type="float" setter="set_param" getter="get_param" brief=""> + </member> + <member name="radial_accel_curve" type="CurveTexture" setter="set_param_texture" getter="get_param_texture" brief=""> + </member> + <member name="radial_accel_random" type="float" setter="set_param_randomness" getter="get_param_randomness" brief=""> + </member> + <member name="scale" type="float" setter="set_param" getter="get_param" brief=""> + </member> + <member name="scale_curve" type="CurveTexture" setter="set_param_texture" getter="get_param_texture" brief=""> + </member> + <member name="scale_random" type="float" setter="set_param_randomness" getter="get_param_randomness" brief=""> + </member> + <member name="spread" type="float" setter="set_spread" getter="get_spread" brief=""> + </member> + <member name="tangential_accel" type="float" setter="set_param" getter="get_param" brief=""> + </member> + <member name="tangential_accel_curve" type="CurveTexture" setter="set_param_texture" getter="get_param_texture" brief=""> + </member> + <member name="tangential_accel_random" type="float" setter="set_param_randomness" getter="get_param_randomness" brief=""> + </member> + <member name="trail_color_modifier" type="GradientTexture" setter="set_trail_color_modifier" getter="get_trail_color_modifier" brief=""> + </member> + <member name="trail_divisor" type="int" setter="set_trail_divisor" getter="get_trail_divisor" brief=""> + </member> + <member name="trail_size_modifier" type="CurveTexture" setter="set_trail_size_modifier" getter="get_trail_size_modifier" brief=""> + </member> + </members> <constants> + <constant name="PARAM_INITIAL_LINEAR_VELOCITY" value="0"> + </constant> + <constant name="PARAM_ANGULAR_VELOCITY" value="1"> + </constant> + <constant name="PARAM_ORBIT_VELOCITY" value="2"> + </constant> + <constant name="PARAM_LINEAR_ACCEL" value="3"> + </constant> + <constant name="PARAM_RADIAL_ACCEL" value="4"> + </constant> + <constant name="PARAM_TANGENTIAL_ACCEL" value="5"> + </constant> + <constant name="PARAM_DAMPING" value="6"> + </constant> + <constant name="PARAM_ANGLE" value="7"> + </constant> + <constant name="PARAM_SCALE" value="8"> + </constant> + <constant name="PARAM_HUE_VARIATION" value="9"> + </constant> + <constant name="PARAM_ANIM_SPEED" value="10"> + </constant> + <constant name="PARAM_ANIM_OFFSET" value="11"> + </constant> + <constant name="PARAM_MAX" value="12"> + </constant> + <constant name="FLAG_ALIGN_Y_TO_VELOCITY" value="0"> + </constant> + <constant name="FLAG_ROTATE_Y" value="1"> + </constant> + <constant name="FLAG_MAX" value="2"> + </constant> + <constant name="EMISSION_SHAPE_POINT" value="0"> + </constant> + <constant name="EMISSION_SHAPE_SPHERE" value="1"> + </constant> + <constant name="EMISSION_SHAPE_BOX" value="2"> + </constant> + <constant name="EMISSION_SHAPE_POINTS" value="3"> + </constant> + <constant name="EMISSION_SHAPE_DIRECTED_POINTS" value="4"> + </constant> </constants> </class> <class name="Path" inherits="Spatial" category="Core"> @@ -34849,6 +35025,32 @@ <constants> </constants> </class> +<class name="QuadMesh" inherits="Mesh" category="Core"> + <brief_description> + </brief_description> + <description> + </description> + <methods> + <method name="get_material" qualifiers="const"> + <return type="Material"> + </return> + <description> + </description> + </method> + <method name="set_material"> + <argument index="0" name="material" type="Material"> + </argument> + <description> + </description> + </method> + </methods> + <members> + <member name="material" type="Material" setter="set_material" getter="get_material" brief=""> + </member> + </members> + <constants> + </constants> +</class> <class name="Quat" category="Built-In Types"> <brief_description> Quaternion. @@ -38207,6 +38409,12 @@ <description> </description> </method> + <method name="is_input_handled"> + <return type="bool"> + </return> + <description> + </description> + </method> <method name="is_network_server" qualifiers="const"> <return type="bool"> </return> @@ -38774,6 +38982,42 @@ </constant> </constants> </class> +<class name="ShaderMaterial" inherits="Material" category="Core"> + <brief_description> + </brief_description> + <description> + </description> + <methods> + <method name="get_shader" qualifiers="const"> + <return type="Shader"> + </return> + <description> + </description> + </method> + <method name="get_shader_param" qualifiers="const"> + <argument index="0" name="param" type="String"> + </argument> + <description> + </description> + </method> + <method name="set_shader"> + <argument index="0" name="shader" type="Shader"> + </argument> + <description> + </description> + </method> + <method name="set_shader_param"> + <argument index="0" name="param" type="String"> + </argument> + <argument index="1" name="value" type="Variant"> + </argument> + <description> + </description> + </method> + </methods> + <constants> + </constants> +</class> <class name="Shape" inherits="Resource" category="Core"> <brief_description> </brief_description> @@ -39576,8 +39820,6 @@ </method> </methods> <members> - <member name="_import_transform" type="Transform" setter="_set_import_transform" getter="_get_import_transform" brief=""> - </member> <member name="global_transform" type="Transform" setter="set_global_transform" getter="get_global_transform" brief=""> </member> <member name="rotation" type="Vector3" setter="set_rotation" getter="get_rotation" brief=""> @@ -39621,14 +39863,704 @@ <constants> </constants> </class> -<class name="SpatialShader" inherits="Shader" category="Core"> +<class name="SpatialMaterial" inherits="Material" category="Core"> <brief_description> </brief_description> <description> </description> <methods> + <method name="get_albedo" qualifiers="const"> + <return type="Color"> + </return> + <description> + </description> + </method> + <method name="get_anisotropy" qualifiers="const"> + <return type="float"> + </return> + <description> + </description> + </method> + <method name="get_billboard_mode" qualifiers="const"> + <return type="int"> + </return> + <description> + </description> + </method> + <method name="get_blend_mode" qualifiers="const"> + <return type="int"> + </return> + <description> + </description> + </method> + <method name="get_clearcoat" qualifiers="const"> + <return type="float"> + </return> + <description> + </description> + </method> + <method name="get_clearcoat_gloss" qualifiers="const"> + <return type="float"> + </return> + <description> + </description> + </method> + <method name="get_cull_mode" qualifiers="const"> + <return type="int"> + </return> + <description> + </description> + </method> + <method name="get_depth_draw_mode" qualifiers="const"> + <return type="int"> + </return> + <description> + </description> + </method> + <method name="get_detail_blend_mode" qualifiers="const"> + <return type="int"> + </return> + <description> + </description> + </method> + <method name="get_detail_uv" qualifiers="const"> + <return type="int"> + </return> + <description> + </description> + </method> + <method name="get_diffuse_mode" qualifiers="const"> + <return type="int"> + </return> + <description> + </description> + </method> + <method name="get_emission" qualifiers="const"> + <return type="Color"> + </return> + <description> + </description> + </method> + <method name="get_emission_energy" qualifiers="const"> + <return type="float"> + </return> + <description> + </description> + </method> + <method name="get_feature" qualifiers="const"> + <return type="bool"> + </return> + <argument index="0" name="feature" type="int"> + </argument> + <description> + </description> + </method> + <method name="get_flag" qualifiers="const"> + <return type="bool"> + </return> + <argument index="0" name="arg0" type="int"> + </argument> + <description> + </description> + </method> + <method name="get_height_scale" qualifiers="const"> + <return type="float"> + </return> + <description> + </description> + </method> + <method name="get_line_width" qualifiers="const"> + <return type="float"> + </return> + <description> + </description> + </method> + <method name="get_metalness" qualifiers="const"> + <return type="float"> + </return> + <description> + </description> + </method> + <method name="get_normal_scale" qualifiers="const"> + <return type="float"> + </return> + <description> + </description> + </method> + <method name="get_particles_anim_h_frames" qualifiers="const"> + <return type="int"> + </return> + <description> + </description> + </method> + <method name="get_particles_anim_loop" qualifiers="const"> + <return type="int"> + </return> + <description> + </description> + </method> + <method name="get_particles_anim_v_frames" qualifiers="const"> + <return type="int"> + </return> + <description> + </description> + </method> + <method name="get_point_size" qualifiers="const"> + <return type="float"> + </return> + <description> + </description> + </method> + <method name="get_refraction" qualifiers="const"> + <return type="float"> + </return> + <description> + </description> + </method> + <method name="get_refraction_roughness" qualifiers="const"> + <return type="float"> + </return> + <description> + </description> + </method> + <method name="get_rim" qualifiers="const"> + <return type="float"> + </return> + <description> + </description> + </method> + <method name="get_rim_tint" qualifiers="const"> + <return type="float"> + </return> + <description> + </description> + </method> + <method name="get_roughness" qualifiers="const"> + <return type="float"> + </return> + <description> + </description> + </method> + <method name="get_specular" qualifiers="const"> + <return type="Color"> + </return> + <description> + </description> + </method> + <method name="get_specular_mode" qualifiers="const"> + <return type="int"> + </return> + <description> + </description> + </method> + <method name="get_subsurface_scattering_strength" qualifiers="const"> + <return type="float"> + </return> + <description> + </description> + </method> + <method name="get_texture" qualifiers="const"> + <return type="Texture"> + </return> + <argument index="0" name="param" type="Texture"> + </argument> + <description> + </description> + </method> + <method name="get_uv1_offset" qualifiers="const"> + <return type="Vector2"> + </return> + <description> + </description> + </method> + <method name="get_uv1_scale" qualifiers="const"> + <return type="Vector2"> + </return> + <description> + </description> + </method> + <method name="get_uv2_offset" qualifiers="const"> + <return type="Vector2"> + </return> + <description> + </description> + </method> + <method name="get_uv2_scale" qualifiers="const"> + <return type="Vector2"> + </return> + <description> + </description> + </method> + <method name="set_albedo"> + <argument index="0" name="albedo" type="Color"> + </argument> + <description> + </description> + </method> + <method name="set_anisotropy"> + <argument index="0" name="anisotropy" type="float"> + </argument> + <description> + </description> + </method> + <method name="set_billboard_mode"> + <argument index="0" name="mode" type="int"> + </argument> + <description> + </description> + </method> + <method name="set_blend_mode"> + <argument index="0" name="blend_mode" type="int"> + </argument> + <description> + </description> + </method> + <method name="set_clearcoat"> + <argument index="0" name="clearcoat" type="float"> + </argument> + <description> + </description> + </method> + <method name="set_clearcoat_gloss"> + <argument index="0" name="clearcoat_gloss" type="float"> + </argument> + <description> + </description> + </method> + <method name="set_cull_mode"> + <argument index="0" name="cull_mode" type="int"> + </argument> + <description> + </description> + </method> + <method name="set_depth_draw_mode"> + <argument index="0" name="depth_draw_mode" type="int"> + </argument> + <description> + </description> + </method> + <method name="set_detail_blend_mode"> + <argument index="0" name="detail_blend_mode" type="int"> + </argument> + <description> + </description> + </method> + <method name="set_detail_uv"> + <argument index="0" name="detail_uv" type="int"> + </argument> + <description> + </description> + </method> + <method name="set_diffuse_mode"> + <argument index="0" name="diffuse_mode" type="int"> + </argument> + <description> + </description> + </method> + <method name="set_emission"> + <argument index="0" name="emission" type="Color"> + </argument> + <description> + </description> + </method> + <method name="set_emission_energy"> + <argument index="0" name="emission_energy" type="float"> + </argument> + <description> + </description> + </method> + <method name="set_feature"> + <argument index="0" name="feature" type="int"> + </argument> + <argument index="1" name="enable" type="bool"> + </argument> + <description> + </description> + </method> + <method name="set_flag"> + <argument index="0" name="flag" type="int"> + </argument> + <argument index="1" name="enable" type="bool"> + </argument> + <description> + </description> + </method> + <method name="set_height_scale"> + <argument index="0" name="height_scale" type="float"> + </argument> + <description> + </description> + </method> + <method name="set_line_width"> + <argument index="0" name="line_width" type="float"> + </argument> + <description> + </description> + </method> + <method name="set_metalness"> + <argument index="0" name="metalness" type="float"> + </argument> + <description> + </description> + </method> + <method name="set_normal_scale"> + <argument index="0" name="normal_scale" type="float"> + </argument> + <description> + </description> + </method> + <method name="set_particles_anim_h_frames"> + <argument index="0" name="frames" type="int"> + </argument> + <description> + </description> + </method> + <method name="set_particles_anim_loop"> + <argument index="0" name="frames" type="int"> + </argument> + <description> + </description> + </method> + <method name="set_particles_anim_v_frames"> + <argument index="0" name="frames" type="int"> + </argument> + <description> + </description> + </method> + <method name="set_point_size"> + <argument index="0" name="point_size" type="float"> + </argument> + <description> + </description> + </method> + <method name="set_refraction"> + <argument index="0" name="refraction" type="float"> + </argument> + <description> + </description> + </method> + <method name="set_refraction_roughness"> + <argument index="0" name="refraction_roughness" type="float"> + </argument> + <description> + </description> + </method> + <method name="set_rim"> + <argument index="0" name="rim" type="float"> + </argument> + <description> + </description> + </method> + <method name="set_rim_tint"> + <argument index="0" name="rim_tint" type="float"> + </argument> + <description> + </description> + </method> + <method name="set_roughness"> + <argument index="0" name="roughness" type="float"> + </argument> + <description> + </description> + </method> + <method name="set_specular"> + <argument index="0" name="specular" type="Color"> + </argument> + <description> + </description> + </method> + <method name="set_specular_mode"> + <argument index="0" name="specular_mode" type="int"> + </argument> + <description> + </description> + </method> + <method name="set_subsurface_scattering_strength"> + <argument index="0" name="strength" type="float"> + </argument> + <description> + </description> + </method> + <method name="set_texture"> + <argument index="0" name="param" type="Texture"> + </argument> + <argument index="1" name="texture" type="Object"> + </argument> + <description> + </description> + </method> + <method name="set_uv1_offset"> + <argument index="0" name="offset" type="Vector2"> + </argument> + <description> + </description> + </method> + <method name="set_uv1_scale"> + <argument index="0" name="scale" type="Vector2"> + </argument> + <description> + </description> + </method> + <method name="set_uv2_offset"> + <argument index="0" name="offset" type="Vector2"> + </argument> + <description> + </description> + </method> + <method name="set_uv2_scale"> + <argument index="0" name="scale" type="Vector2"> + </argument> + <description> + </description> + </method> </methods> + <members> + <member name="albedo_color" type="Color" setter="set_albedo" getter="get_albedo" brief=""> + </member> + <member name="albedo_texture" type="Texture" setter="set_texture" getter="get_texture" brief=""> + </member> + <member name="anisotropy_anisotropy" type="float" setter="set_anisotropy" getter="get_anisotropy" brief=""> + </member> + <member name="anisotropy_enabled" type="bool" setter="set_feature" getter="get_feature" brief=""> + </member> + <member name="anisotropy_flowmap" type="Texture" setter="set_texture" getter="get_texture" brief=""> + </member> + <member name="ao_enabled" type="bool" setter="set_feature" getter="get_feature" brief=""> + </member> + <member name="ao_texture" type="Texture" setter="set_texture" getter="get_texture" brief=""> + </member> + <member name="clearcoat_amount" type="float" setter="set_clearcoat" getter="get_clearcoat" brief=""> + </member> + <member name="clearcoat_enabled" type="bool" setter="set_feature" getter="get_feature" brief=""> + </member> + <member name="clearcoat_gloss" type="float" setter="set_clearcoat_gloss" getter="get_clearcoat_gloss" brief=""> + </member> + <member name="clearcoat_texture" type="Texture" setter="set_texture" getter="get_texture" brief=""> + </member> + <member name="detail_albedo" type="Texture" setter="set_texture" getter="get_texture" brief=""> + </member> + <member name="detail_blend_mode" type="int" setter="set_detail_blend_mode" getter="get_detail_blend_mode" brief=""> + </member> + <member name="detail_enabled" type="bool" setter="set_feature" getter="get_feature" brief=""> + </member> + <member name="detail_mask" type="Texture" setter="set_texture" getter="get_texture" brief=""> + </member> + <member name="detail_normal" type="Texture" setter="set_texture" getter="get_texture" brief=""> + </member> + <member name="detail_uv_layer" type="int" setter="set_detail_uv" getter="get_detail_uv" brief=""> + </member> + <member name="emission_color" type="Color" setter="set_emission" getter="get_emission" brief=""> + </member> + <member name="emission_enabled" type="bool" setter="set_feature" getter="get_feature" brief=""> + </member> + <member name="emission_energy" type="float" setter="set_emission_energy" getter="get_emission_energy" brief=""> + </member> + <member name="emission_texture" type="Texture" setter="set_texture" getter="get_texture" brief=""> + </member> + <member name="flags_fixed_size" type="bool" setter="set_flag" getter="get_flag" brief=""> + </member> + <member name="flags_on_top" type="bool" setter="set_flag" getter="get_flag" brief=""> + </member> + <member name="flags_transparent" type="bool" setter="set_feature" getter="get_feature" brief=""> + </member> + <member name="flags_unshaded" type="bool" setter="set_flag" getter="get_flag" brief=""> + </member> + <member name="flags_use_point_size" type="bool" setter="set_flag" getter="get_flag" brief=""> + </member> + <member name="height_enabled" type="bool" setter="set_feature" getter="get_feature" brief=""> + </member> + <member name="height_scale" type="float" setter="set_height_scale" getter="get_height_scale" brief=""> + </member> + <member name="height_texture" type="Texture" setter="set_texture" getter="get_texture" brief=""> + </member> + <member name="normal_enabled" type="bool" setter="set_feature" getter="get_feature" brief=""> + </member> + <member name="normal_scale" type="float" setter="set_normal_scale" getter="get_normal_scale" brief=""> + </member> + <member name="normal_texture" type="Texture" setter="set_texture" getter="get_texture" brief=""> + </member> + <member name="params_billboard_mode" type="int" setter="set_billboard_mode" getter="get_billboard_mode" brief=""> + </member> + <member name="params_blend_mode" type="int" setter="set_blend_mode" getter="get_blend_mode" brief=""> + </member> + <member name="params_cull_mode" type="int" setter="set_cull_mode" getter="get_cull_mode" brief=""> + </member> + <member name="params_depth_draw_mode" type="int" setter="set_depth_draw_mode" getter="get_depth_draw_mode" brief=""> + </member> + <member name="params_diffuse_mode" type="int" setter="set_diffuse_mode" getter="get_diffuse_mode" brief=""> + </member> + <member name="params_line_width" type="float" setter="set_line_width" getter="get_line_width" brief=""> + </member> + <member name="params_point_size" type="float" setter="set_point_size" getter="get_point_size" brief=""> + </member> + <member name="particles_anim_h_frames" type="int" setter="set_particles_anim_h_frames" getter="get_particles_anim_h_frames" brief=""> + </member> + <member name="particles_anim_loop" type="bool" setter="set_particles_anim_loop" getter="get_particles_anim_loop" brief=""> + </member> + <member name="particles_anim_v_frames" type="int" setter="set_particles_anim_v_frames" getter="get_particles_anim_v_frames" brief=""> + </member> + <member name="refraction_displacement" type="float" setter="set_refraction" getter="get_refraction" brief=""> + </member> + <member name="refraction_enabled" type="bool" setter="set_feature" getter="get_feature" brief=""> + </member> + <member name="refraction_roughness" type="float" setter="set_refraction_roughness" getter="get_refraction_roughness" brief=""> + </member> + <member name="refraction_texture" type="Texture" setter="set_texture" getter="get_texture" brief=""> + </member> + <member name="rim_amount" type="float" setter="set_rim" getter="get_rim" brief=""> + </member> + <member name="rim_enabled" type="bool" setter="set_feature" getter="get_feature" brief=""> + </member> + <member name="rim_texture" type="Texture" setter="set_texture" getter="get_texture" brief=""> + </member> + <member name="rim_tint" type="float" setter="set_rim_tint" getter="get_rim_tint" brief=""> + </member> + <member name="specular_color" type="Color" setter="set_specular" getter="get_specular" brief=""> + </member> + <member name="specular_metalness" type="float" setter="set_metalness" getter="get_metalness" brief=""> + </member> + <member name="specular_mode" type="int" setter="set_specular_mode" getter="get_specular_mode" brief=""> + </member> + <member name="specular_roughness" type="float" setter="set_roughness" getter="get_roughness" brief=""> + </member> + <member name="specular_texture" type="Texture" setter="set_texture" getter="get_texture" brief=""> + </member> + <member name="subsurf_scatter_enabled" type="bool" setter="set_feature" getter="get_feature" brief=""> + </member> + <member name="subsurf_scatter_strength" type="float" setter="set_subsurface_scattering_strength" getter="get_subsurface_scattering_strength" brief=""> + </member> + <member name="subsurf_scatter_texture" type="Texture" setter="set_texture" getter="get_texture" brief=""> + </member> + <member name="uv1_offset" type="Vector2" setter="set_uv1_offset" getter="get_uv1_offset" brief=""> + </member> + <member name="uv1_scale" type="Vector2" setter="set_uv1_scale" getter="get_uv1_scale" brief=""> + </member> + <member name="uv2_offset" type="Vector2" setter="set_uv2_offset" getter="get_uv2_offset" brief=""> + </member> + <member name="uv2_scale" type="Vector2" setter="set_uv2_scale" getter="get_uv2_scale" brief=""> + </member> + <member name="vertex_color_is_srgb" type="bool" setter="set_flag" getter="get_flag" brief=""> + </member> + <member name="vertex_color_use_as_albedo" type="bool" setter="set_flag" getter="get_flag" brief=""> + </member> + </members> <constants> + <constant name="TEXTURE_ALBEDO" value="0"> + </constant> + <constant name="TEXTURE_SPECULAR" value="1"> + </constant> + <constant name="TEXTURE_EMISSION" value="2"> + </constant> + <constant name="TEXTURE_NORMAL" value="3"> + </constant> + <constant name="TEXTURE_RIM" value="4"> + </constant> + <constant name="TEXTURE_CLEARCOAT" value="5"> + </constant> + <constant name="TEXTURE_FLOWMAP" value="6"> + </constant> + <constant name="TEXTURE_AMBIENT_OCCLUSION" value="7"> + </constant> + <constant name="TEXTURE_HEIGHT" value="8"> + </constant> + <constant name="TEXTURE_SUBSURFACE_SCATTERING" value="9"> + </constant> + <constant name="TEXTURE_REFRACTION" value="10"> + </constant> + <constant name="TEXTURE_REFRACTION_ROUGHNESS" value="11"> + </constant> + <constant name="TEXTURE_DETAIL_MASK" value="12"> + </constant> + <constant name="TEXTURE_DETAIL_ALBEDO" value="13"> + </constant> + <constant name="TEXTURE_DETAIL_NORMAL" value="14"> + </constant> + <constant name="TEXTURE_MAX" value="15"> + </constant> + <constant name="DETAIL_UV_1" value="0"> + </constant> + <constant name="DETAIL_UV_2" value="1"> + </constant> + <constant name="FEATURE_TRANSPARENT" value="0"> + </constant> + <constant name="FEATURE_EMISSION" value="1"> + </constant> + <constant name="FEATURE_NORMAL_MAPPING" value="2"> + </constant> + <constant name="FEATURE_RIM" value="3"> + </constant> + <constant name="FEATURE_CLEARCOAT" value="4"> + </constant> + <constant name="FEATURE_ANISOTROPY" value="5"> + </constant> + <constant name="FEATURE_AMBIENT_OCCLUSION" value="6"> + </constant> + <constant name="FEATURE_HEIGHT_MAPPING" value="7"> + </constant> + <constant name="FEATURE_SUBSURACE_SCATTERING" value="8"> + </constant> + <constant name="FEATURE_REFRACTION" value="9"> + </constant> + <constant name="FEATURE_DETAIL" value="10"> + </constant> + <constant name="FEATURE_MAX" value="11"> + </constant> + <constant name="BLEND_MODE_MIX" value="0"> + </constant> + <constant name="BLEND_MODE_ADD" value="1"> + </constant> + <constant name="BLEND_MODE_SUB" value="2"> + </constant> + <constant name="BLEND_MODE_MUL" value="3"> + </constant> + <constant name="DEPTH_DRAW_OPAQUE_ONLY" value="0"> + </constant> + <constant name="DEPTH_DRAW_ALWAYS" value="1"> + </constant> + <constant name="DEPTH_DRAW_DISABLED" value="2"> + </constant> + <constant name="DEPTH_DRAW_ALPHA_OPAQUE_PREPASS" value="3"> + </constant> + <constant name="CULL_BACK" value="0"> + </constant> + <constant name="CULL_FRONT" value="1"> + </constant> + <constant name="CULL_DISABLED" value="2"> + </constant> + <constant name="FLAG_UNSHADED" value="0"> + </constant> + <constant name="FLAG_ONTOP" value="1"> + </constant> + <constant name="FLAG_ALBEDO_FROM_VERTEX_COLOR" value="2"> + </constant> + <constant name="FLAG_SRGB_VERTEX_COLOR" value="3"> + </constant> + <constant name="FLAG_USE_POINT_SIZE" value="4"> + </constant> + <constant name="FLAG_FIXED_SIZE" value="5"> + </constant> + <constant name="FLAG_MAX" value="6"> + </constant> + <constant name="DIFFUSE_LAMBERT" value="0"> + </constant> + <constant name="DIFFUSE_LAMBERT_WRAP" value="1"> + </constant> + <constant name="DIFFUSE_OREN_NAYAR" value="2"> + </constant> + <constant name="DIFFUSE_BURLEY" value="3"> + </constant> + <constant name="SPECULAR_MODE_METALLIC" value="0"> + </constant> + <constant name="SPECULAR_MODE_SPECULAR" value="1"> + </constant> + <constant name="BILLBOARD_DISABLED" value="0"> + </constant> + <constant name="BILLBOARD_ENABLED" value="1"> + </constant> + <constant name="BILLBOARD_FIXED_Y" value="2"> + </constant> + <constant name="BILLBOARD_PARTICLES" value="3"> + </constant> </constants> </class> <class name="SphereShape" inherits="Shape" category="Core"> @@ -44425,7 +45357,7 @@ </description> </method> <method name="tile_get_material" qualifiers="const"> - <return type="CanvasItemMaterial"> + <return type="ShaderMaterial"> </return> <argument index="0" name="id" type="int"> </argument> @@ -44535,7 +45467,7 @@ <method name="tile_set_material"> <argument index="0" name="id" type="int"> </argument> - <argument index="1" name="material" type="CanvasItemMaterial"> + <argument index="1" name="material" type="ShaderMaterial"> </argument> <description> Set the material of the tile. @@ -44857,6 +45789,12 @@ <description> </description> </method> + <method name="is_shape_visible" qualifiers="const"> + <return type="bool"> + </return> + <description> + </description> + </method> <method name="set_action"> <argument index="0" name="action" type="String"> </argument> @@ -44887,6 +45825,12 @@ <description> </description> </method> + <method name="set_shape_visible"> + <argument index="0" name="bool" type="bool"> + </argument> + <description> + </description> + </method> <method name="set_texture"> <argument index="0" name="texture" type="Object"> </argument> @@ -44921,6 +45865,8 @@ </member> <member name="shape_centered" type="bool" setter="set_shape_centered" getter="is_shape_centered" brief=""> </member> + <member name="shape_visible" type="bool" setter="set_shape_visible" getter="is_shape_visible" brief=""> + </member> <member name="visibility_mode" type="int" setter="set_visibility_mode" getter="get_visibility_mode" brief=""> </member> </members> diff --git a/doc/tools/makedocs.py b/doc/tools/makedocs.py index 4c4b5d6fb9..9e0430bfbf 100644 --- a/doc/tools/makedocs.py +++ b/doc/tools/makedocs.py @@ -4,6 +4,7 @@ # # makedocs.py: Generate documentation for Open Project Wiki # Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. +# Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) # Contributor: Jorge Araya Navarro <elcorreo@deshackra.com> # diff --git a/drivers/alsa/audio_driver_alsa.cpp b/drivers/alsa/audio_driver_alsa.cpp index 7e445c7c10..b32d540380 100644 --- a/drivers/alsa/audio_driver_alsa.cpp +++ b/drivers/alsa/audio_driver_alsa.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/alsa/audio_driver_alsa.h b/drivers/alsa/audio_driver_alsa.h index e545b7a511..9e9413f3d9 100644 --- a/drivers/alsa/audio_driver_alsa.h +++ b/drivers/alsa/audio_driver_alsa.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/convex_decomp/b2d_decompose.cpp b/drivers/convex_decomp/b2d_decompose.cpp index afafda1527..f918b66c31 100644 --- a/drivers/convex_decomp/b2d_decompose.cpp +++ b/drivers/convex_decomp/b2d_decompose.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/convex_decomp/b2d_decompose.h b/drivers/convex_decomp/b2d_decompose.h index c3765275ef..3a064e08d3 100644 --- a/drivers/convex_decomp/b2d_decompose.h +++ b/drivers/convex_decomp/b2d_decompose.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/gl_context/context_gl.cpp b/drivers/gl_context/context_gl.cpp index 9fe7fbf2b8..935391d58e 100644 --- a/drivers/gl_context/context_gl.cpp +++ b/drivers/gl_context/context_gl.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/gl_context/context_gl.h b/drivers/gl_context/context_gl.h index 280da1aea6..c8eb0f93b4 100644 --- a/drivers/gl_context/context_gl.h +++ b/drivers/gl_context/context_gl.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/gles2/rasterizer_gles2.cpp b/drivers/gles2/rasterizer_gles2.cpp index 3f54f887da..60282fb3fa 100644 --- a/drivers/gles2/rasterizer_gles2.cpp +++ b/drivers/gles2/rasterizer_gles2.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -8699,7 +8700,7 @@ void RasterizerGLES2::_canvas_item_render_commands(CanvasItem *p_item, CanvasIte } } -void RasterizerGLES2::_canvas_item_setup_shader_params(CanvasItemMaterial *material, Shader *shader) { +void RasterizerGLES2::_canvas_item_setup_shader_params(ShaderMaterial *material, Shader *shader) { if (canvas_shader.bind()) rebind_texpixel_size = true; @@ -8748,7 +8749,7 @@ void RasterizerGLES2::_canvas_item_setup_shader_params(CanvasItemMaterial *mater uses_texpixel_size = shader->uses_texpixel_size; } -void RasterizerGLES2::_canvas_item_setup_shader_uniforms(CanvasItemMaterial *material, Shader *shader) { +void RasterizerGLES2::_canvas_item_setup_shader_uniforms(ShaderMaterial *material, Shader *shader) { //this can be optimized.. int tex_id = 1; @@ -8925,7 +8926,7 @@ void RasterizerGLES2::canvas_render_items(CanvasItem *p_item_list, int p_z, cons //begin rect CanvasItem *material_owner = ci->material_owner ? ci->material_owner : ci; - CanvasItemMaterial *material = material_owner->material; + ShaderMaterial *material = material_owner->material; if (material != canvas_last_material || rebind_shader) { diff --git a/drivers/gles2/rasterizer_gles2.h b/drivers/gles2/rasterizer_gles2.h index 9aeb3af61a..e6b76a4e92 100644 --- a/drivers/gles2/rasterizer_gles2.h +++ b/drivers/gles2/rasterizer_gles2.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -1224,7 +1225,7 @@ class RasterizerGLES2 : public Rasterizer { bool uses_texpixel_size; bool rebind_texpixel_size; Transform canvas_transform; - CanvasItemMaterial *canvas_last_material; + ShaderMaterial *canvas_last_material; bool canvas_texscreen_used; Vector2 normal_flip; _FORCE_INLINE_ void _canvas_normal_set_flip(const Vector2 &p_flip); @@ -1288,8 +1289,8 @@ class RasterizerGLES2 : public Rasterizer { template <bool use_normalmap> _FORCE_INLINE_ void _canvas_item_render_commands(CanvasItem *p_item, CanvasItem *current_clip, bool &reclip); - _FORCE_INLINE_ void _canvas_item_setup_shader_params(CanvasItemMaterial *material, Shader *p_shader); - _FORCE_INLINE_ void _canvas_item_setup_shader_uniforms(CanvasItemMaterial *material, Shader *p_shader); + _FORCE_INLINE_ void _canvas_item_setup_shader_params(ShaderMaterial *material, Shader *p_shader); + _FORCE_INLINE_ void _canvas_item_setup_shader_uniforms(ShaderMaterial *material, Shader *p_shader); public: /* TEXTURE API */ diff --git a/drivers/gles2/rasterizer_instance_gles2.cpp b/drivers/gles2/rasterizer_instance_gles2.cpp index 47bf6d11ff..8aedd4def0 100644 --- a/drivers/gles2/rasterizer_instance_gles2.cpp +++ b/drivers/gles2/rasterizer_instance_gles2.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/gles2/rasterizer_instance_gles2.h b/drivers/gles2/rasterizer_instance_gles2.h index 329e4e2739..09e9716b50 100644 --- a/drivers/gles2/rasterizer_instance_gles2.h +++ b/drivers/gles2/rasterizer_instance_gles2.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/gles2/shader_compiler_gles2.cpp b/drivers/gles2/shader_compiler_gles2.cpp index 25decb37a2..778d28fb99 100644 --- a/drivers/gles2/shader_compiler_gles2.cpp +++ b/drivers/gles2/shader_compiler_gles2.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/gles2/shader_compiler_gles2.h b/drivers/gles2/shader_compiler_gles2.h index 2565adcd5d..02f9e58978 100644 --- a/drivers/gles2/shader_compiler_gles2.h +++ b/drivers/gles2/shader_compiler_gles2.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/gles2/shader_gles2.cpp b/drivers/gles2/shader_gles2.cpp index 08b9c21d5b..961bf27a72 100644 --- a/drivers/gles2/shader_gles2.cpp +++ b/drivers/gles2/shader_gles2.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/gles2/shader_gles2.h b/drivers/gles2/shader_gles2.h index a292fda7fe..69a66b8ab7 100644 --- a/drivers/gles2/shader_gles2.h +++ b/drivers/gles2/shader_gles2.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/gles3/rasterizer_canvas_gles3.cpp b/drivers/gles3/rasterizer_canvas_gles3.cpp index 34a5858729..4f6d68de43 100644 --- a/drivers/gles3/rasterizer_canvas_gles3.cpp +++ b/drivers/gles3/rasterizer_canvas_gles3.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -687,7 +688,7 @@ void RasterizerCanvasGLES3::_canvas_item_render_commands(Item *p_item, Item *cur } #if 0 -void RasterizerGLES2::_canvas_item_setup_shader_params(CanvasItemMaterial *material,Shader* shader) { +void RasterizerGLES2::_canvas_item_setup_shader_params(ShaderMaterial *material,Shader* shader) { if (canvas_shader.bind()) rebind_texpixel_size=true; diff --git a/drivers/gles3/rasterizer_canvas_gles3.h b/drivers/gles3/rasterizer_canvas_gles3.h index c90dcc7d65..95ef9ee443 100644 --- a/drivers/gles3/rasterizer_canvas_gles3.h +++ b/drivers/gles3/rasterizer_canvas_gles3.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/gles3/rasterizer_gles3.cpp b/drivers/gles3/rasterizer_gles3.cpp index b6cb57d68a..a7349695db 100644 --- a/drivers/gles3/rasterizer_gles3.cpp +++ b/drivers/gles3/rasterizer_gles3.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/gles3/rasterizer_gles3.h b/drivers/gles3/rasterizer_gles3.h index 823f39ae8f..ba3715b805 100644 --- a/drivers/gles3/rasterizer_gles3.h +++ b/drivers/gles3/rasterizer_gles3.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/gles3/rasterizer_scene_gles3.cpp b/drivers/gles3/rasterizer_scene_gles3.cpp index d3936801dd..0e97e2d459 100644 --- a/drivers/gles3/rasterizer_scene_gles3.cpp +++ b/drivers/gles3/rasterizer_scene_gles3.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -1283,6 +1284,35 @@ void RasterizerSceneGLES3::_setup_geometry(RenderList::Element *e) { } } break; + case VS::INSTANCE_PARTICLES: { + + RasterizerStorageGLES3::Particles *particles = static_cast<RasterizerStorageGLES3::Particles *>(e->owner); + RasterizerStorageGLES3::Surface *s = static_cast<RasterizerStorageGLES3::Surface *>(e->geometry); + + glBindVertexArray(s->instancing_array_id); // use the instancing array ID + glBindBuffer(GL_ARRAY_BUFFER, particles->particle_buffers[0]); //modify the buffer + + int stride = sizeof(float) * 4 * 6; + + //transform + + glEnableVertexAttribArray(8); //xform x + glVertexAttribPointer(8, 4, GL_FLOAT, GL_FALSE, stride, ((uint8_t *)NULL) + sizeof(float) * 4 * 3); + glVertexAttribDivisor(8, 1); + glEnableVertexAttribArray(9); //xform y + glVertexAttribPointer(9, 4, GL_FLOAT, GL_FALSE, stride, ((uint8_t *)NULL) + sizeof(float) * 4 * 4); + glVertexAttribDivisor(9, 1); + glEnableVertexAttribArray(10); //xform z + glVertexAttribPointer(10, 4, GL_FLOAT, GL_FALSE, stride, ((uint8_t *)NULL) + sizeof(float) * 4 * 5); + glVertexAttribDivisor(10, 1); + glEnableVertexAttribArray(11); //color + glVertexAttribPointer(11, 4, GL_FLOAT, GL_FALSE, stride, ((uint8_t *)NULL) + 0); + glVertexAttribDivisor(11, 1); + glEnableVertexAttribArray(12); //custom + glVertexAttribPointer(12, 4, GL_FLOAT, GL_FALSE, stride, ((uint8_t *)NULL) + sizeof(float) * 4 * 2); + glVertexAttribDivisor(12, 1); + + } break; } } @@ -1451,6 +1481,30 @@ void RasterizerSceneGLES3::_render_geometry(RenderList::Element *e) { restore_tex = false; } } break; + case VS::INSTANCE_PARTICLES: { + + RasterizerStorageGLES3::Particles *particles = static_cast<RasterizerStorageGLES3::Particles *>(e->owner); + RasterizerStorageGLES3::Surface *s = static_cast<RasterizerStorageGLES3::Surface *>(e->geometry); + + if (!particles->use_local_coords) //not using local coordinates? then clear transform.. + state.scene_shader.set_uniform(SceneShaderGLES3::WORLD_TRANSFORM, Transform()); + + int amount = particles->amount; + + if (s->index_array_len > 0) { + + glDrawElementsInstanced(gl_primitive[s->primitive], s->index_array_len, (s->array_len >= (1 << 16)) ? GL_UNSIGNED_INT : GL_UNSIGNED_SHORT, 0, amount); + + storage->info.render_vertices_count += s->index_array_len * amount; + + } else { + + glDrawArraysInstanced(gl_primitive[s->primitive], 0, s->array_len, amount); + + storage->info.render_vertices_count += s->array_len * amount; + } + + } break; } } @@ -1556,61 +1610,6 @@ void RasterizerSceneGLES3::_setup_light(RenderList::Element *e, const Transform } } -void RasterizerSceneGLES3::_setup_transform(InstanceBase *p_instance, const Transform &p_view_transform, const CameraMatrix &p_projection) { - - if (p_instance->billboard || p_instance->billboard_y || p_instance->depth_scale) { - - Transform xf = p_instance->transform; - if (p_instance->depth_scale) { - - if (p_projection.matrix[3][3]) { - //orthogonal matrix, try to do about the same - //with viewport size - //real_t w = Math::abs( 1.0/(2.0*(p_projection.matrix[0][0])) ); - real_t h = Math::abs(1.0 / (2.0 * p_projection.matrix[1][1])); - float sc = (h * 2.0); //consistent with Y-fov - xf.basis.scale(Vector3(sc, sc, sc)); - } else { - //just scale by depth - real_t sc = Plane(p_view_transform.origin, -p_view_transform.get_basis().get_axis(2)).distance_to(xf.origin); - xf.basis.scale(Vector3(sc, sc, sc)); - } - } - - if (p_instance->billboard && storage->frame.current_rt) { - - Vector3 scale = xf.basis.get_scale(); - - if (storage->frame.current_rt->flags[RasterizerStorage::RENDER_TARGET_VFLIP]) { - xf.set_look_at(xf.origin, xf.origin + p_view_transform.get_basis().get_axis(2), -p_view_transform.get_basis().get_axis(1)); - } else { - xf.set_look_at(xf.origin, xf.origin + p_view_transform.get_basis().get_axis(2), p_view_transform.get_basis().get_axis(1)); - } - - xf.basis.scale(scale); - } - - if (p_instance->billboard_y && storage->frame.current_rt) { - - Vector3 scale = xf.basis.get_scale(); - Vector3 look_at = p_view_transform.get_origin(); - look_at.y = 0.0; - Vector3 look_at_norm = look_at.normalized(); - - if (storage->frame.current_rt->flags[RasterizerStorage::RENDER_TARGET_VFLIP]) { - xf.set_look_at(xf.origin, xf.origin + look_at_norm, Vector3(0.0, -1.0, 0.0)); - } else { - xf.set_look_at(xf.origin, xf.origin + look_at_norm, Vector3(0.0, 1.0, 0.0)); - } - xf.basis.scale(scale); - } - state.scene_shader.set_uniform(SceneShaderGLES3::WORLD_TRANSFORM, xf); - - } else { - state.scene_shader.set_uniform(SceneShaderGLES3::WORLD_TRANSFORM, p_instance->transform); - } -} - void RasterizerSceneGLES3::_set_cull(bool p_front, bool p_reverse_cull) { bool front = p_front; @@ -1677,6 +1676,7 @@ void RasterizerSceneGLES3::_render_list(RenderList::Element **p_elements, int p_ state.scene_shader.set_conditional(SceneShaderGLES3::SHADELESS, true); //by default unshaded (easier to set) bool first = true; + bool prev_use_instancing = false; storage->info.render_object_count += p_element_count; @@ -1804,10 +1804,10 @@ void RasterizerSceneGLES3::_render_list(RenderList::Element **p_elements, int p_ } } + bool use_instancing = e->instance->base_type == VS::INSTANCE_MULTIMESH || e->instance->base_type == VS::INSTANCE_PARTICLES; - - if ((prev_base_type == VS::INSTANCE_MULTIMESH) != (e->instance->base_type == VS::INSTANCE_MULTIMESH)) { - state.scene_shader.set_conditional(SceneShaderGLES3::USE_INSTANCING, e->instance->base_type == VS::INSTANCE_MULTIMESH); + if (use_instancing != prev_use_instancing) { + state.scene_shader.set_conditional(SceneShaderGLES3::USE_INSTANCING, use_instancing); rebind = true; } @@ -1820,7 +1820,7 @@ void RasterizerSceneGLES3::_render_list(RenderList::Element **p_elements, int p_ if (skeleton.is_valid()) { RasterizerStorageGLES3::Skeleton *sk = storage->skeleton_owner.getornull(skeleton); glActiveTexture(GL_TEXTURE0 + storage->config.max_texture_image_units - 6); - glBindTexture(GL_TEXTURE_2D,sk->texture); + glBindTexture(GL_TEXTURE_2D, sk->texture); } } @@ -1835,8 +1835,6 @@ void RasterizerSceneGLES3::_render_list(RenderList::Element **p_elements, int p_ } } - - if (!(e->sort_key & RenderList::SORT_KEY_UNSHADED_FLAG) && !p_directional_add && !p_shadow) { _setup_light(e, p_view_transform); } @@ -1850,8 +1848,7 @@ void RasterizerSceneGLES3::_render_list(RenderList::Element **p_elements, int p_ _set_cull(e->sort_key & RenderList::SORT_KEY_MIRROR_FLAG, p_reverse_cull); state.scene_shader.set_uniform(SceneShaderGLES3::NORMAL_MULT, e->instance->mirror ? -1.0 : 1.0); - - _setup_transform(e->instance, p_view_transform, p_projection); + state.scene_shader.set_uniform(SceneShaderGLES3::WORLD_TRANSFORM, e->instance->transform); _render_geometry(e); @@ -1861,6 +1858,7 @@ void RasterizerSceneGLES3::_render_list(RenderList::Element **p_elements, int p_ prev_owner = e->owner; prev_shading = shading; prev_skeleton = skeleton; + prev_use_instancing = use_instancing; first = false; } @@ -1930,7 +1928,7 @@ void RasterizerSceneGLES3::_add_geometry(RasterizerStorageGLES3::Geometry *p_geo if (has_blend_alpha || (has_base_alpha && m->shader->spatial.depth_draw_mode != RasterizerStorageGLES3::Shader::Spatial::DEPTH_DRAW_ALPHA_PREPASS)) return; //bye - if (!m->shader->spatial.uses_vertex && !m->shader->spatial.uses_discard && m->shader->spatial.depth_draw_mode != RasterizerStorageGLES3::Shader::Spatial::DEPTH_DRAW_ALPHA_PREPASS) { + if (!m->shader->spatial.writes_modelview_or_projection && !m->shader->spatial.uses_vertex && !m->shader->spatial.uses_discard && m->shader->spatial.depth_draw_mode != RasterizerStorageGLES3::Shader::Spatial::DEPTH_DRAW_ALPHA_PREPASS) { //shader does not use discard and does not write a vertex position, use generic material if (p_instance->cast_shadows == VS::SHADOW_CASTING_SETTING_DOUBLE_SIDED) m = storage->material_owner.getptr(default_material_twosided); @@ -2730,6 +2728,30 @@ void RasterizerSceneGLES3::_fill_render_list(InstanceBase **p_cull_result, int p case VS::INSTANCE_IMMEDIATE: { } break; + case VS::INSTANCE_PARTICLES: { + + RasterizerStorageGLES3::Particles *particles = storage->particles_owner.getptr(inst->base); + ERR_CONTINUE(!particles); + + for (int i = 0; i < particles->draw_passes.size(); i++) { + + RID pmesh = particles->draw_passes[i]; + if (!pmesh.is_valid()) + continue; + RasterizerStorageGLES3::Mesh *mesh = storage->mesh_owner.get(pmesh); + if (!mesh) + continue; //mesh not assigned + + int ssize = mesh->surfaces.size(); + + for (int j = 0; j < ssize; j++) { + + RasterizerStorageGLES3::Surface *s = mesh->surfaces[j]; + _add_geometry(s, inst, particles, -1, p_shadow); + } + } + + } break; } } } @@ -4419,13 +4441,14 @@ void RasterizerSceneGLES3::initialize() { state.scene_shader.init(); - default_shader = storage->shader_create(VS::SHADER_SPATIAL); + default_shader = storage->shader_create(); + storage->shader_set_code(default_shader, "shader_type spatial;\n"); default_material = storage->material_create(); storage->material_set_shader(default_material, default_shader); - default_shader_twosided = storage->shader_create(VS::SHADER_SPATIAL); + default_shader_twosided = storage->shader_create(); default_material_twosided = storage->material_create(); - storage->shader_set_code(default_shader_twosided, "render_mode cull_disabled;\n"); + storage->shader_set_code(default_shader_twosided, "shader_type spatial; render_mode cull_disabled;\n"); storage->material_set_shader(default_material_twosided, default_shader_twosided); glGenBuffers(1, &state.scene_ubo); diff --git a/drivers/gles3/rasterizer_scene_gles3.h b/drivers/gles3/rasterizer_scene_gles3.h index b27bce726f..10136ff8d7 100644 --- a/drivers/gles3/rasterizer_scene_gles3.h +++ b/drivers/gles3/rasterizer_scene_gles3.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -691,7 +692,6 @@ public: _FORCE_INLINE_ void _set_cull(bool p_front, bool p_reverse_cull); _FORCE_INLINE_ bool _setup_material(RasterizerStorageGLES3::Material *p_material, bool p_alpha_pass); - _FORCE_INLINE_ void _setup_transform(InstanceBase *p_instance, const Transform &p_view_transform, const CameraMatrix &p_projection); _FORCE_INLINE_ void _setup_geometry(RenderList::Element *e); _FORCE_INLINE_ void _render_geometry(RenderList::Element *e); _FORCE_INLINE_ void _setup_light(RenderList::Element *e, const Transform &p_view_transform); diff --git a/drivers/gles3/rasterizer_storage_gles3.cpp b/drivers/gles3/rasterizer_storage_gles3.cpp index 4fcd09ed58..7fc2185e9a 100644 --- a/drivers/gles3/rasterizer_storage_gles3.cpp +++ b/drivers/gles3/rasterizer_storage_gles3.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -1338,12 +1339,12 @@ void RasterizerStorageGLES3::skybox_set_texture(RID p_skybox, RID p_cube_map, in /* SHADER API */ -RID RasterizerStorageGLES3::shader_create(VS::ShaderMode p_mode) { +RID RasterizerStorageGLES3::shader_create() { Shader *shader = memnew(Shader); - shader->mode = p_mode; + shader->mode = VS::SHADER_SPATIAL; + shader->shader = &scene->state.scene_shader; RID rid = shader_owner.make_rid(shader); - shader_set_mode(rid, p_mode); _shader_make_dirty(shader); shader->self = rid; @@ -1358,22 +1359,30 @@ void RasterizerStorageGLES3::_shader_make_dirty(Shader *p_shader) { _shader_dirty_list.add(&p_shader->dirty_list); } -void RasterizerStorageGLES3::shader_set_mode(RID p_shader, VS::ShaderMode p_mode) { +void RasterizerStorageGLES3::shader_set_code(RID p_shader, const String &p_code) { - ERR_FAIL_INDEX(p_mode, VS::SHADER_MAX); Shader *shader = shader_owner.get(p_shader); ERR_FAIL_COND(!shader); - if (shader->custom_code_id && p_mode == shader->mode) - return; + shader->code = p_code; + + String mode_string = ShaderLanguage::get_shader_type(p_code); + VS::ShaderMode mode; - if (shader->custom_code_id) { + if (mode_string == "canvas_item") + mode = VS::SHADER_CANVAS_ITEM; + else if (mode_string == "particles") + mode = VS::SHADER_PARTICLES; + else + mode = VS::SHADER_SPATIAL; + + if (shader->custom_code_id && mode != shader->mode) { shader->shader->free_custom_shader(shader->custom_code_id); shader->custom_code_id = 0; } - shader->mode = p_mode; + shader->mode = mode; ShaderGLES3 *shaders[VS::SHADER_MAX] = { &scene->state.scene_shader, @@ -1382,25 +1391,12 @@ void RasterizerStorageGLES3::shader_set_mode(RID p_shader, VS::ShaderMode p_mode }; - shader->shader = shaders[p_mode]; - - shader->custom_code_id = shader->shader->create_custom_shader(); - - _shader_make_dirty(shader); -} -VS::ShaderMode RasterizerStorageGLES3::shader_get_mode(RID p_shader) const { - - const Shader *shader = shader_owner.get(p_shader); - ERR_FAIL_COND_V(!shader, VS::SHADER_MAX); - - return shader->mode; -} -void RasterizerStorageGLES3::shader_set_code(RID p_shader, const String &p_code) { + shader->shader = shaders[mode]; - Shader *shader = shader_owner.get(p_shader); - ERR_FAIL_COND(!shader); + if (shader->custom_code_id == 0) { + shader->custom_code_id = shader->shader->create_custom_shader(); + } - shader->code = p_code; _shader_make_dirty(shader); } String RasterizerStorageGLES3::shader_get_code(RID p_shader) const { @@ -1453,6 +1449,7 @@ void RasterizerStorageGLES3::_update_shader(Shader *p_shader) const { p_shader->spatial.ontop = false; p_shader->spatial.uses_sss = false; p_shader->spatial.uses_vertex = false; + p_shader->spatial.writes_modelview_or_projection = false; shaders.actions_scene.render_mode_values["blend_add"] = Pair<int *, int>(&p_shader->spatial.blend_mode, Shader::Spatial::BLEND_MODE_ADD); shaders.actions_scene.render_mode_values["blend_mix"] = Pair<int *, int>(&p_shader->spatial.blend_mode, Shader::Spatial::BLEND_MODE_MIX); @@ -1477,6 +1474,9 @@ void RasterizerStorageGLES3::_update_shader(Shader *p_shader) const { shaders.actions_scene.usage_flag_pointers["SSS_STRENGTH"] = &p_shader->spatial.uses_sss; shaders.actions_scene.usage_flag_pointers["DISCARD"] = &p_shader->spatial.uses_discard; + shaders.actions_scene.write_flag_pointers["MODELVIEW_MATRIX"] = &p_shader->spatial.writes_modelview_or_projection; + shaders.actions_scene.write_flag_pointers["PROJECTION_MATRIX"] = &p_shader->spatial.writes_modelview_or_projection; + actions = &shaders.actions_scene; actions->uniforms = &p_shader->uniforms; @@ -4861,6 +4861,8 @@ void RasterizerStorageGLES3::particles_set_amount(RID p_particles, int p_amount) Particles *particles = particles_owner.getornull(p_particles); ERR_FAIL_COND(!particles); + particles->amount = p_amount; + int floats = p_amount * 24; float *data = memnew_arr(float, floats); @@ -4868,17 +4870,25 @@ void RasterizerStorageGLES3::particles_set_amount(RID p_particles, int p_amount) data[i] = 0; } - glBindBuffer(GL_ARRAY_BUFFER, particles->particle_buffers[0]); - glBufferData(GL_ARRAY_BUFFER, floats * sizeof(float), data, GL_DYNAMIC_DRAW); + for (int i = 0; i < 2; i++) { - glBindBuffer(GL_ARRAY_BUFFER, particles->particle_buffers[1]); - glBufferData(GL_ARRAY_BUFFER, floats * sizeof(float), data, GL_DYNAMIC_DRAW); + glBindVertexArray(particles->particle_vaos[i]); - glBindBuffer(GL_ARRAY_BUFFER, 0); + glBindBuffer(GL_ARRAY_BUFFER, particles->particle_buffers[i]); + glBufferData(GL_ARRAY_BUFFER, floats * sizeof(float), data, GL_DYNAMIC_DRAW); + + for (int i = 0; i < 6; i++) { + glEnableVertexAttribArray(i); + glVertexAttribPointer(i, 4, GL_FLOAT, GL_FALSE, sizeof(float) * 4 * 6, ((uint8_t *)0) + (i * 16)); + } + } + + glBindVertexArray(0); particles->prev_ticks = 0; particles->phase = 0; particles->prev_phase = 0; + particles->clear = true; memdelete_arr(data); } @@ -4927,41 +4937,29 @@ void RasterizerStorageGLES3::particles_set_use_local_coordinates(RID p_particles particles->use_local_coords = p_enable; } -void RasterizerStorageGLES3::particles_set_process_material(RID p_particles, RID p_material) { - - Particles *particles = particles_owner.getornull(p_particles); - ERR_FAIL_COND(!particles); - particles->process_material = p_material; -} - -void RasterizerStorageGLES3::particles_set_emission_shape(RID p_particles, VS::ParticlesEmissionShape p_shape) { +void RasterizerStorageGLES3::particles_set_fixed_fps(RID p_particles, int p_fps) { Particles *particles = particles_owner.getornull(p_particles); ERR_FAIL_COND(!particles); - particles->emission_shape = p_shape; + particles->fixed_fps = p_fps; } -void RasterizerStorageGLES3::particles_set_emission_sphere_radius(RID p_particles, float p_radius) { - Particles *particles = particles_owner.getornull(p_particles); - ERR_FAIL_COND(!particles); - - particles->emission_sphere_radius = p_radius; -} -void RasterizerStorageGLES3::particles_set_emission_box_extents(RID p_particles, const Vector3 &p_extents) { +void RasterizerStorageGLES3::particles_set_fractional_delta(RID p_particles, bool p_enable) { Particles *particles = particles_owner.getornull(p_particles); ERR_FAIL_COND(!particles); - particles->emission_box_extents = p_extents; + particles->fractional_delta = p_enable; } -void RasterizerStorageGLES3::particles_set_emission_points(RID p_particles, const PoolVector<Vector3> &p_points) { + +void RasterizerStorageGLES3::particles_set_process_material(RID p_particles, RID p_material) { Particles *particles = particles_owner.getornull(p_particles); ERR_FAIL_COND(!particles); - particles->emission_points = p_points; + particles->process_material = p_material; } void RasterizerStorageGLES3::particles_set_draw_order(RID p_particles, VS::ParticlesDrawOrder p_order) { @@ -4972,26 +4970,30 @@ void RasterizerStorageGLES3::particles_set_draw_order(RID p_particles, VS::Parti particles->draw_order = p_order; } -void RasterizerStorageGLES3::particles_set_draw_passes(RID p_particles, int p_count) { +void RasterizerStorageGLES3::particles_set_draw_passes(RID p_particles, int p_passes) { Particles *particles = particles_owner.getornull(p_particles); ERR_FAIL_COND(!particles); - particles->draw_passes.resize(p_count); + particles->draw_passes.resize(p_passes); } -void RasterizerStorageGLES3::particles_set_draw_pass_material(RID p_particles, int p_pass, RID p_material) { + +void RasterizerStorageGLES3::particles_set_draw_pass_mesh(RID p_particles, int p_pass, RID p_mesh) { Particles *particles = particles_owner.getornull(p_particles); ERR_FAIL_COND(!particles); ERR_FAIL_INDEX(p_pass, particles->draw_passes.size()); - particles->draw_passes[p_pass].material = p_material; + particles->draw_passes[p_pass] = p_mesh; } -void RasterizerStorageGLES3::particles_set_draw_pass_mesh(RID p_particles, int p_pass, RID p_mesh) { + +void RasterizerStorageGLES3::particles_request_process(RID p_particles) { Particles *particles = particles_owner.getornull(p_particles); ERR_FAIL_COND(!particles); - ERR_FAIL_INDEX(p_pass, particles->draw_passes.size()); - particles->draw_passes[p_pass].mesh = p_mesh; + + if (!particles->particle_element.in_list()) { + particle_update_list.add(&particles->particle_element); + } } Rect3 RasterizerStorageGLES3::particles_get_current_aabb(RID p_particles) { @@ -5002,10 +5004,86 @@ Rect3 RasterizerStorageGLES3::particles_get_current_aabb(RID p_particles) { return particles->computed_aabb; } +Rect3 RasterizerStorageGLES3::particles_get_aabb(RID p_particles) const { + + const Particles *particles = particles_owner.getornull(p_particles); + ERR_FAIL_COND_V(!particles, Rect3()); + + return Rect3(Vector3(-1, -1, -1), Vector3(2, 2, 2)); +} + +void RasterizerStorageGLES3::particles_set_emission_transform(RID p_particles, const Transform &p_transform) { + + Particles *particles = particles_owner.getornull(p_particles); + ERR_FAIL_COND(!particles); + + particles->emission_transform = p_transform; +} + +void RasterizerStorageGLES3::_particles_process(Particles *particles, float p_delta) { + + float new_phase = Math::fmod((float)particles->phase + (p_delta / particles->lifetime), (float)1.0); + + if (particles->clear) { + particles->cycle_number = 0; + } else if (new_phase < particles->phase) { + particles->cycle_number++; + } + + shaders.particles.set_uniform(ParticlesShaderGLES3::SYSTEM_PHASE, new_phase); + shaders.particles.set_uniform(ParticlesShaderGLES3::PREV_SYSTEM_PHASE, particles->phase); + particles->phase = new_phase; + + shaders.particles.set_uniform(ParticlesShaderGLES3::DELTA, p_delta); + shaders.particles.set_uniform(ParticlesShaderGLES3::CLEAR, particles->clear); + if (particles->use_local_coords) + shaders.particles.set_uniform(ParticlesShaderGLES3::EMISSION_TRANSFORM, Transform()); + else + shaders.particles.set_uniform(ParticlesShaderGLES3::EMISSION_TRANSFORM, particles->emission_transform); + + glUniform1ui(shaders.particles.get_uniform(ParticlesShaderGLES3::CYCLE), particles->cycle_number); + + particles->clear = false; + + glBindVertexArray(particles->particle_vaos[0]); + + glBindBufferBase(GL_TRANSFORM_FEEDBACK_BUFFER, 0, particles->particle_buffers[1]); + + // GLint size = 0; + // glGetBufferParameteriv(GL_ARRAY_BUFFER, GL_BUFFER_SIZE, &size); + + glBeginTransformFeedback(GL_POINTS); + glDrawArrays(GL_POINTS, 0, particles->amount); + glEndTransformFeedback(); + + SWAP(particles->particle_buffers[0], particles->particle_buffers[1]); + SWAP(particles->particle_vaos[0], particles->particle_vaos[1]); + + glBindVertexArray(0); + /* //debug particles :D + glBindBuffer(GL_ARRAY_BUFFER, particles->particle_buffers[0]); + + float *data = (float *)glMapBufferRange(GL_ARRAY_BUFFER, 0, particles->amount * 16 * 6, GL_MAP_READ_BIT); + for (int i = 0; i < particles->amount; i++) { + int ofs = i * 24; + print_line(itos(i) + ":"); + print_line("\tColor: " + Color(data[ofs + 0], data[ofs + 1], data[ofs + 2], data[ofs + 3])); + print_line("\tVelocity: " + Vector3(data[ofs + 4], data[ofs + 5], data[ofs + 6])); + print_line("\tActive: " + itos(data[ofs + 7])); + print_line("\tCustom: " + Color(data[ofs + 8], data[ofs + 9], data[ofs + 10], data[ofs + 11])); + print_line("\tXF X: " + Color(data[ofs + 12], data[ofs + 13], data[ofs + 14], data[ofs + 15])); + print_line("\tXF Y: " + Color(data[ofs + 16], data[ofs + 17], data[ofs + 18], data[ofs + 19])); + print_line("\tXF Z: " + Color(data[ofs + 20], data[ofs + 21], data[ofs + 22], data[ofs + 23])); + } + + glUnmapBuffer(GL_ARRAY_BUFFER); + glBindBuffer(GL_ARRAY_BUFFER, 0); + //*/ +} + void RasterizerStorageGLES3::update_particles() { glEnable(GL_RASTERIZER_DISCARD); - glBindVertexArray(0); while (particle_update_list.first()) { @@ -5068,38 +5146,61 @@ void RasterizerStorageGLES3::update_particles() { } } - shaders.particles.bind(); - - shaders.particles.set_uniform(ParticlesShaderGLES3::ORIGIN, particles->origin); - - float new_phase = Math::fmod((float)particles->phase + (frame.delta / particles->lifetime), (float)1.0); + shaders.particles.set_conditional(ParticlesShaderGLES3::USE_FRACTIONAL_DELTA, particles->fractional_delta); - shaders.particles.set_uniform(ParticlesShaderGLES3::SYSTEM_PHASE, new_phase); - shaders.particles.set_uniform(ParticlesShaderGLES3::PREV_SYSTEM_PHASE, particles->phase); - particles->phase = new_phase; + shaders.particles.bind(); shaders.particles.set_uniform(ParticlesShaderGLES3::TOTAL_PARTICLES, particles->amount); - shaders.particles.set_uniform(ParticlesShaderGLES3::TIME, 0.0); + shaders.particles.set_uniform(ParticlesShaderGLES3::TIME, Color(frame.time[0], frame.time[1], frame.time[2], frame.time[3])); shaders.particles.set_uniform(ParticlesShaderGLES3::EXPLOSIVENESS, particles->explosiveness); - shaders.particles.set_uniform(ParticlesShaderGLES3::DELTA, frame.delta); + shaders.particles.set_uniform(ParticlesShaderGLES3::LIFETIME, particles->lifetime); shaders.particles.set_uniform(ParticlesShaderGLES3::GRAVITY, particles->gravity); shaders.particles.set_uniform(ParticlesShaderGLES3::ATTRACTOR_COUNT, 0); + shaders.particles.set_uniform(ParticlesShaderGLES3::EMITTING, particles->emitting); + shaders.particles.set_uniform(ParticlesShaderGLES3::RANDOMNESS, particles->randomness); - glBindBuffer(GL_ARRAY_BUFFER, particles->particle_buffers[0]); - glBindBufferBase(GL_TRANSFORM_FEEDBACK_BUFFER, 0, particles->particle_buffers[1]); + if (particles->clear && particles->pre_process_time > 0.0) { - for (int i = 0; i < 6; i++) { - glEnableVertexAttribArray(i); - glVertexAttribPointer(i, 4, GL_FLOAT, GL_FALSE, sizeof(float) * 4 * 6, ((uint8_t *)0) + (i * 16)); + float frame_time; + if (particles->fixed_fps > 0) + frame_time = 1.0 / particles->fixed_fps; + else + frame_time = 1.0 / 30.0; + + float delta = particles->pre_process_time; + if (delta > 0.1) { //avoid recursive stalls if fps goes below 10 + delta = 0.1; + } + float todo = delta; + + while (todo >= frame_time) { + _particles_process(particles, frame_time); + todo -= frame_time; + } } - glBeginTransformFeedback(GL_POINTS); - glDrawArrays(GL_POINTS, 0, particles->amount); - glEndTransformFeedback(); + if (particles->fixed_fps > 0) { + float frame_time = 1.0 / particles->fixed_fps; + float delta = frame.delta; + if (delta > 0.1) { //avoid recursive stalls if fps goes below 10 + delta = 0.1; + } else if (delta <= 0.0) { //unlikely but.. + delta = 0.001; + } + float todo = particles->frame_remainder + delta; - particle_update_list.remove(particle_update_list.first()); + while (todo >= frame_time) { + _particles_process(particles, frame_time); + todo -= frame_time; + } + + particles->frame_remainder = todo; + + } else { + _particles_process(particles, frame.delta); + } - SWAP(particles->particle_buffers[0], particles->particle_buffers[1]); + particle_update_list.remove(particle_update_list.first()); } glDisable(GL_RASTERIZER_DISCARD); @@ -5143,6 +5244,10 @@ void RasterizerStorageGLES3::instance_add_dependency(RID p_base, RasterizerScene inst = immediate_owner.getornull(p_base); ERR_FAIL_COND(!inst); } break; + case VS::INSTANCE_PARTICLES: { + inst = particles_owner.getornull(p_base); + ERR_FAIL_COND(!inst); + } break; case VS::INSTANCE_REFLECTION_PROBE: { inst = reflection_probe_owner.getornull(p_base); ERR_FAIL_COND(!inst); @@ -5182,6 +5287,10 @@ void RasterizerStorageGLES3::instance_remove_dependency(RID p_base, RasterizerSc inst = immediate_owner.getornull(p_base); ERR_FAIL_COND(!inst); } break; + case VS::INSTANCE_PARTICLES: { + inst = particles_owner.getornull(p_base); + ERR_FAIL_COND(!inst); + } break; case VS::INSTANCE_REFLECTION_PROBE: { inst = reflection_probe_owner.getornull(p_base); ERR_FAIL_COND(!inst); @@ -5856,6 +5965,10 @@ VS::InstanceType RasterizerStorageGLES3::get_base_type(RID p_rid) const { return VS::INSTANCE_IMMEDIATE; } + if (particles_owner.owns(p_rid)) { + return VS::INSTANCE_PARTICLES; + } + if (light_owner.owns(p_rid)) { return VS::INSTANCE_LIGHT; } diff --git a/drivers/gles3/rasterizer_storage_gles3.h b/drivers/gles3/rasterizer_storage_gles3.h index 50617b8124..6ae9fd18a2 100644 --- a/drivers/gles3/rasterizer_storage_gles3.h +++ b/drivers/gles3/rasterizer_storage_gles3.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -408,6 +409,7 @@ public: bool uses_vertex; bool uses_discard; bool uses_sss; + bool writes_modelview_or_projection; } spatial; @@ -433,10 +435,7 @@ public: mutable RID_Owner<Shader> shader_owner; - virtual RID shader_create(VS::ShaderMode p_mode = VS::SHADER_SPATIAL); - - virtual void shader_set_mode(RID p_shader, VS::ShaderMode p_mode); - virtual VS::ShaderMode shader_get_mode(RID p_shader) const; + virtual RID shader_create(); virtual void shader_set_code(RID p_shader, const String &p_code); virtual String shader_get_code(RID p_shader) const; @@ -778,7 +777,7 @@ public: Skeleton() : update_list(this) { - size=0; + size = 0; use_2d = false; texture = 0; @@ -987,7 +986,7 @@ public: /* PARTICLES */ - struct Particles : public Instantiable { + struct Particles : public GeometryOwner { bool emitting; int amount; @@ -1000,23 +999,14 @@ public: bool use_local_coords; RID process_material; - VS::ParticlesEmissionShape emission_shape; - float emission_sphere_radius; - Vector3 emission_box_extents; - PoolVector<Vector3> emission_points; - GLuint emission_point_texture; - VS::ParticlesDrawOrder draw_order; - struct DrawPass { - RID mesh; - RID material; - }; - Vector<DrawPass> draw_passes; + Vector<RID> draw_passes; Rect3 computed_aabb; GLuint particle_buffers[2]; + GLuint particle_vaos[2]; SelfList<Particles> particle_element; @@ -1024,10 +1014,19 @@ public: float prev_phase; uint64_t prev_ticks; - Transform origin; + uint32_t cycle_number; + + int fixed_fps; + bool fractional_delta; + float frame_remainder; + + bool clear; + + Transform emission_transform; Particles() : particle_element(this) { + cycle_number = 0; emitting = false; amount = 0; lifetime = 1.0; @@ -1035,23 +1034,26 @@ public: explosiveness = 0.0; randomness = 0.0; use_local_coords = true; + fixed_fps = 0; + fractional_delta = false; + frame_remainder = 0; draw_order = VS::PARTICLES_DRAW_ORDER_INDEX; - emission_shape = VS::PARTICLES_EMSSION_POINT; - emission_sphere_radius = 1.0; - emission_box_extents = Vector3(1, 1, 1); - emission_point_texture = 0; particle_buffers[0] = 0; particle_buffers[1] = 0; prev_ticks = 0; + clear = true; + glGenBuffers(2, particle_buffers); + glGenVertexArrays(2, particle_vaos); } ~Particles() { glDeleteBuffers(2, particle_buffers); + glDeleteVertexArrays(2, particle_vaos); } }; @@ -1073,19 +1075,20 @@ public: virtual void particles_set_gravity(RID p_particles, const Vector3 &p_gravity); virtual void particles_set_use_local_coordinates(RID p_particles, bool p_enable); virtual void particles_set_process_material(RID p_particles, RID p_material); - - virtual void particles_set_emission_shape(RID p_particles, VS::ParticlesEmissionShape p_shape); - virtual void particles_set_emission_sphere_radius(RID p_particles, float p_radius); - virtual void particles_set_emission_box_extents(RID p_particles, const Vector3 &p_extents); - virtual void particles_set_emission_points(RID p_particles, const PoolVector<Vector3> &p_points); + virtual void particles_set_fixed_fps(RID p_particles, int p_fps); + virtual void particles_set_fractional_delta(RID p_particles, bool p_enable); virtual void particles_set_draw_order(RID p_particles, VS::ParticlesDrawOrder p_order); virtual void particles_set_draw_passes(RID p_particles, int p_count); - virtual void particles_set_draw_pass_material(RID p_particles, int p_pass, RID p_material); virtual void particles_set_draw_pass_mesh(RID p_particles, int p_pass, RID p_mesh); + virtual void particles_request_process(RID p_particles); virtual Rect3 particles_get_current_aabb(RID p_particles); + virtual Rect3 particles_get_aabb(RID p_particles) const; + + virtual void particles_set_emission_transform(RID p_particles, const Transform &p_transform); + void _particles_process(Particles *p_particles, float p_delta); /* INSTANCE */ diff --git a/drivers/gles3/shader_compiler_gles3.cpp b/drivers/gles3/shader_compiler_gles3.cpp index 48ca86ebe2..6aeb3af2cd 100644 --- a/drivers/gles3/shader_compiler_gles3.cpp +++ b/drivers/gles3/shader_compiler_gles3.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -91,6 +92,16 @@ static String _prestr(SL::DataPrecision p_pres) { return ""; } +static String _qualstr(SL::ArgumentQualifier p_qual) { + + switch (p_qual) { + case SL::ARGUMENT_QUALIFIER_IN: return ""; + case SL::ARGUMENT_QUALIFIER_OUT: return "out "; + case SL::ARGUMENT_QUALIFIER_INOUT: return "inout "; + } + return ""; +} + static String _opstr(SL::Operator p_op) { return SL::get_operator_text(p_op); @@ -175,6 +186,21 @@ static String get_constant_text(SL::DataType p_type, const Vector<SL::ConstantNo return text; } break; + case SL::TYPE_MAT2: + case SL::TYPE_MAT3: + case SL::TYPE_MAT4: { + + String text = "mat" + itos(p_type - SL::TYPE_MAT2 + 2) + "("; + for (int i = 0; i < p_values.size(); i++) { + if (i > 0) + text += ","; + + text += f2sp0(p_values[i].real); + } + text += ")"; + return text; + + } break; default: ERR_FAIL_V(String()); } } @@ -194,6 +220,7 @@ void ShaderCompilerGLES3::_dump_function_deps(SL::ShaderNode *p_node, const Stri for (Set<StringName>::Element *E = p_node->functions[fidx].uses_function.front(); E; E = E->next()) { + print_line(String(p_node->functions[fidx].name) + " uses function: " + String(E->get())); if (added.has(E->get())) { continue; //was added already } @@ -219,7 +246,7 @@ void ShaderCompilerGLES3::_dump_function_deps(SL::ShaderNode *p_node, const Stri if (i > 0) header += ", "; - header += _prestr(fnode->arguments[i].precision) + _typestr(fnode->arguments[i].type) + " " + _mkid(fnode->arguments[i].name); + header += _qualstr(fnode->arguments[i].qualifier) + _prestr(fnode->arguments[i].precision) + _typestr(fnode->arguments[i].type) + " " + _mkid(fnode->arguments[i].name); } header += ")\n"; @@ -383,6 +410,7 @@ String ShaderCompilerGLES3::_dump_node_code(SL::Node *p_node, int p_level, Gener if (fnode->name == "vertex") { + print_line("vertex uses functions: " + itos(pnode->functions[i].uses_function.size())); _dump_function_deps(pnode, fnode->name, function_code, r_gen_code.vertex_global, added_vtx); r_gen_code.vertex = function_code["vertex"]; } @@ -482,6 +510,12 @@ String ShaderCompilerGLES3::_dump_node_code(SL::Node *p_node, int p_level, Gener case SL::OP_ASSIGN_BIT_AND: case SL::OP_ASSIGN_BIT_OR: case SL::OP_ASSIGN_BIT_XOR: + if (onode->arguments[0]->type == SL::Node::TYPE_VARIABLE) { + SL::VariableNode *vnode = (SL::VariableNode *)onode->arguments[0]; + if (p_actions.write_flag_pointers.has(vnode->name)) { + *p_actions.write_flag_pointers[vnode->name] = true; + } + } code = _dump_node_code(onode->arguments[0], p_level, r_gen_code, p_actions, p_default_actions) + _opstr(onode->op) + _dump_node_code(onode->arguments[1], p_level, r_gen_code, p_actions, p_default_actions); break; case SL::OP_BIT_INVERT: @@ -524,6 +558,23 @@ String ShaderCompilerGLES3::_dump_node_code(SL::Node *p_node, int p_level, Gener } code += ")"; } break; + case SL::OP_INDEX: { + + code += _dump_node_code(onode->arguments[0], p_level, r_gen_code, p_actions, p_default_actions); + code += "["; + code += _dump_node_code(onode->arguments[1], p_level, r_gen_code, p_actions, p_default_actions); + code += "]"; + + } break; + case SL::OP_SELECT_IF: { + + code += _dump_node_code(onode->arguments[0], p_level, r_gen_code, p_actions, p_default_actions); + code += "?"; + code += _dump_node_code(onode->arguments[1], p_level, r_gen_code, p_actions, p_default_actions); + code += ":"; + code += _dump_node_code(onode->arguments[2], p_level, r_gen_code, p_actions, p_default_actions); + + } break; default: { code = "(" + _dump_node_code(onode->arguments[0], p_level, r_gen_code, p_actions, p_default_actions) + _opstr(onode->op) + _dump_node_code(onode->arguments[1], p_level, r_gen_code, p_actions, p_default_actions) + ")"; @@ -546,10 +597,10 @@ String ShaderCompilerGLES3::_dump_node_code(SL::Node *p_node, int p_level, Gener } else if (cfnode->flow_op == SL::FLOW_OP_RETURN) { - if (cfnode->blocks.size()) { - code = "return " + _dump_node_code(cfnode->blocks[0], p_level, r_gen_code, p_actions, p_default_actions); + if (cfnode->expressions.size()) { + code = "return " + _dump_node_code(cfnode->expressions[0], p_level, r_gen_code, p_actions, p_default_actions) + ";"; } else { - code = "return"; + code = "return;"; } } @@ -566,7 +617,7 @@ String ShaderCompilerGLES3::_dump_node_code(SL::Node *p_node, int p_level, Gener Error ShaderCompilerGLES3::compile(VS::ShaderMode p_mode, const String &p_code, IdentifierActions *p_actions, const String &p_path, GeneratedCode &r_gen_code) { - Error err = parser.compile(p_code, ShaderTypes::get_singleton()->get_functions(p_mode), ShaderTypes::get_singleton()->get_modes(p_mode)); + Error err = parser.compile(p_code, ShaderTypes::get_singleton()->get_functions(p_mode), ShaderTypes::get_singleton()->get_modes(p_mode), ShaderTypes::get_singleton()->get_types()); if (err != OK) { #if 1 @@ -648,7 +699,9 @@ ShaderCompilerGLES3::ShaderCompilerGLES3() { actions[VS::SHADER_SPATIAL].renames["WORLD_MATRIX"] = "world_transform"; actions[VS::SHADER_SPATIAL].renames["INV_CAMERA_MATRIX"] = "camera_inverse_matrix"; + actions[VS::SHADER_SPATIAL].renames["CAMERA_MATRIX"] = "camera_matrix"; actions[VS::SHADER_SPATIAL].renames["PROJECTION_MATRIX"] = "projection_matrix"; + actions[VS::SHADER_SPATIAL].renames["MODELVIEW_MATRIX"] = "modelview"; actions[VS::SHADER_SPATIAL].renames["VERTEX"] = "vertex.xyz"; actions[VS::SHADER_SPATIAL].renames["NORMAL"] = "normal"; @@ -686,6 +739,7 @@ ShaderCompilerGLES3::ShaderCompilerGLES3() { actions[VS::SHADER_SPATIAL].renames["DISCARD"] = "_discard"; //actions[VS::SHADER_SPATIAL].renames["SCREEN_UV"]=ShaderLanguage::TYPE_VEC2; actions[VS::SHADER_SPATIAL].renames["POINT_COORD"] = "gl_PointCoord"; + actions[VS::SHADER_SPATIAL].renames["INSTANCE_CUSTOM"] = "instance_custom"; actions[VS::SHADER_SPATIAL].usage_defines["TANGENT"] = "#define ENABLE_TANGENT_INTERP\n"; actions[VS::SHADER_SPATIAL].usage_defines["BINORMAL"] = "@TANGENT"; @@ -701,16 +755,17 @@ ShaderCompilerGLES3::ShaderCompilerGLES3() { actions[VS::SHADER_SPATIAL].usage_defines["NORMALMAP"] = "#define ENABLE_NORMALMAP\n"; actions[VS::SHADER_SPATIAL].usage_defines["NORMALMAP_DEPTH"] = "@NORMALMAP"; actions[VS::SHADER_SPATIAL].usage_defines["COLOR"] = "#define ENABLE_COLOR_INTERP\n"; + actions[VS::SHADER_SPATIAL].usage_defines["INSTANCE_CUSTOM"] = "#define ENABLE_INSTANCE_CUSTOM\n"; actions[VS::SHADER_SPATIAL].usage_defines["SSS_STRENGTH"] = "#define ENABLE_SSS_MOTION\n"; actions[VS::SHADER_SPATIAL].renames["SSS_STRENGTH"] = "sss_strength"; - actions[VS::SHADER_SPATIAL].render_mode_defines["skip_transform"] = "#define SKIP_TRANSFORM_USED\n"; + actions[VS::SHADER_SPATIAL].render_mode_defines["skip_default_transform"] = "#define SKIP_TRANSFORM_USED\n"; /* PARTICLES SHADER */ - actions[VS::SHADER_PARTICLES].renames["COLOR"] = "color"; + actions[VS::SHADER_PARTICLES].renames["COLOR"] = "out_color"; actions[VS::SHADER_PARTICLES].renames["VELOCITY"] = "out_velocity_active.xyz"; actions[VS::SHADER_PARTICLES].renames["MASS"] = "mass"; actions[VS::SHADER_PARTICLES].renames["ACTIVE"] = "active"; @@ -719,13 +774,15 @@ ShaderCompilerGLES3::ShaderCompilerGLES3() { actions[VS::SHADER_PARTICLES].renames["TRANSFORM"] = "xform"; actions[VS::SHADER_PARTICLES].renames["TIME"] = "time"; actions[VS::SHADER_PARTICLES].renames["LIFETIME"] = "lifetime"; - actions[VS::SHADER_PARTICLES].renames["DELTA"] = "delta"; - actions[VS::SHADER_PARTICLES].renames["SEED"] = "seed"; - actions[VS::SHADER_PARTICLES].renames["ORIGIN"] = "origin"; + actions[VS::SHADER_PARTICLES].renames["DELTA"] = "local_delta"; + actions[VS::SHADER_PARTICLES].renames["NUMBER"] = "particle_number"; actions[VS::SHADER_PARTICLES].renames["INDEX"] = "index"; + actions[VS::SHADER_PARTICLES].renames["GRAVITY"] = "current_gravity"; + actions[VS::SHADER_PARTICLES].renames["EMISSION_TRANSFORM"] = "emission_transform"; actions[VS::SHADER_SPATIAL].render_mode_defines["disable_force"] = "#define DISABLE_FORCE\n"; actions[VS::SHADER_SPATIAL].render_mode_defines["disable_velocity"] = "#define DISABLE_VELOCITY\n"; + actions[VS::SHADER_SPATIAL].render_mode_defines["keep_data"] = "#define ENABLE_KEEP_DATA\n"; vertex_name = "vertex"; fragment_name = "fragment"; diff --git a/drivers/gles3/shader_compiler_gles3.h b/drivers/gles3/shader_compiler_gles3.h index 44d6b3a349..e79fdb3ba3 100644 --- a/drivers/gles3/shader_compiler_gles3.h +++ b/drivers/gles3/shader_compiler_gles3.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -41,6 +42,7 @@ public: Map<StringName, Pair<int *, int> > render_mode_values; Map<StringName, bool *> render_mode_flags; Map<StringName, bool *> usage_flag_pointers; + Map<StringName, bool *> write_flag_pointers; Map<StringName, ShaderLanguage::ShaderNode::Uniform> *uniforms; }; diff --git a/drivers/gles3/shader_gles3.cpp b/drivers/gles3/shader_gles3.cpp index 3894f24295..bebc006032 100644 --- a/drivers/gles3/shader_gles3.cpp +++ b/drivers/gles3/shader_gles3.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/gles3/shader_gles3.h b/drivers/gles3/shader_gles3.h index 6f5ccc9126..5a34010a98 100644 --- a/drivers/gles3/shader_gles3.h +++ b/drivers/gles3/shader_gles3.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/gles3/shaders/particles.glsl b/drivers/gles3/shaders/particles.glsl index e72f12cc5e..347b15d639 100644 --- a/drivers/gles3/shaders/particles.glsl +++ b/drivers/gles3/shaders/particles.glsl @@ -22,16 +22,21 @@ struct Attractor { #define MAX_ATTRACTORS 64 -uniform mat4 origin; +uniform bool emitting; uniform float system_phase; uniform float prev_system_phase; -uniform float total_particles; +uniform int total_particles; uniform float explosiveness; +uniform float randomness; uniform vec4 time; uniform float delta; uniform vec3 gravity; uniform int attractor_count; uniform Attractor attractors[MAX_ATTRACTORS]; +uniform bool clear; +uniform uint cycle; +uniform float lifetime; +uniform mat4 emission_transform; out highp vec4 out_color; //tfb: @@ -53,52 +58,116 @@ MATERIAL_UNIFORMS #endif +uint hash(uint x) { + + x = ((x >> uint(16)) ^ x) * uint(0x45d9f3b); + x = ((x >> uint(16)) ^ x) * uint(0x45d9f3b); + x = (x >> uint(16)) ^ x; + return x; +} + + void main() { bool apply_forces=true; bool apply_velocity=true; + vec3 current_gravity = gravity; + float local_delta=delta; float mass = 1.0; - float restart_phase = float(gl_InstanceID)/total_particles; - restart_phase*= explosiveness; + float restart_phase = float(gl_VertexID)/float(total_particles); + + if (randomness>0.0) { + uint seed = cycle; + if (restart_phase >= system_phase) { + seed-=uint(1); + } + seed*=uint(total_particles); + seed+=uint(gl_VertexID); + float random = float(hash(seed) % uint(65536)) / 65536.0; + restart_phase+=randomness * random * 1.0 / float(total_particles); + } + + restart_phase*= (1.0-explosiveness); bool restart=false; - bool active = out_velocity_active.a > 0.5; + bool active = velocity_active.a > 0.5; if (system_phase > prev_system_phase) { - restart = prev_system_phase < restart_phase && system_phase >= restart_phase; + if (prev_system_phase < restart_phase && system_phase >= restart_phase) { + restart=true; +#ifdef USE_FRACTIONAL_DELTA + local_delta = (system_phase - restart_phase) * lifetime; +#endif + } + } else { - restart = prev_system_phase < restart_phase || system_phase >= restart_phase; + if (prev_system_phase < restart_phase) { + restart=true; +#ifdef USE_FRACTIONAL_DELTA + local_delta = (1.0 - restart_phase + system_phase) * lifetime; +#endif + } else if (system_phase >= restart_phase) { + restart=true; +#ifdef USE_FRACTIONAL_DELTA + local_delta = (system_phase - restart_phase) * lifetime; +#endif + } } - if (restart) { - active=true; + uint current_cycle = cycle; + + if (system_phase < restart_phase) { + current_cycle-=uint(1); } - out_color=color; - out_velocity_active=velocity_active; - out_custom=custom; + uint particle_number = current_cycle * uint(total_particles) + uint(gl_VertexID); - mat4 xform = transpose(mat4(xform_1,xform_2,xform_3,vec4(vec3(0.0),1.0))); + if (restart) { + active=emitting; + } + mat4 xform; - out_rot_active=rot_active; +#if defined(ENABLE_KEEP_DATA) + if (clear) { +#else + if (clear || restart) { +#endif + out_color=vec4(1.0); + out_velocity_active=vec4(0.0); + out_custom=vec4(0.0); + if (!restart) + active=false; + + xform = mat4( + vec4(1.0,0.0,0.0,0.0), + vec4(0.0,1.0,0.0,0.0), + vec4(0.0,0.0,1.0,0.0), + vec4(0.0,0.0,0.0,1.0) + ); + } else { + out_color=color; + out_velocity_active=velocity_active; + out_custom=custom; + xform = transpose(mat4(xform_1,xform_2,xform_3,vec4(vec3(0.0),1.0))); + } if (active) { //execute shader { - VERTEX_SHADER_CODE +VERTEX_SHADER_CODE } #if !defined(DISABLE_FORCE) - { + if (true) { - vec3 force = gravity; + vec3 force = current_gravity; for(int i=0;i<attractor_count;i++) { - vec3 rel_vec = out_pos_lifetime.xyz - attractors[i].pos; + vec3 rel_vec = xform[3].xyz - attractors[i].pos; float dist = rel_vec.length(); if (attractors[i].radius < dist) continue; @@ -119,17 +188,19 @@ void main() { } } - out_velocity_seed.xyz += force * delta; + out_velocity_active.xyz += force * local_delta; } #endif #if !defined(DISABLE_VELOCITY) - { + if (true) { - out_pos_lifetime.xyz += out_velocity_seed.xyz * delta; + xform[3].xyz += out_velocity_active.xyz * local_delta; } #endif + } else { + xform=mat4(0.0); } xform = transpose(xform); @@ -162,6 +233,6 @@ MATERIAL_UNIFORMS void main() { { - FRAGMENT_SHADER_CODE +FRAGMENT_SHADER_CODE } } diff --git a/drivers/gles3/shaders/scene.glsl b/drivers/gles3/shaders/scene.glsl index ffc41e611b..43a391631f 100644 --- a/drivers/gles3/shaders/scene.glsl +++ b/drivers/gles3/shaders/scene.glsl @@ -52,6 +52,10 @@ layout(location=9) in highp vec4 instance_xform1; layout(location=10) in highp vec4 instance_xform2; layout(location=11) in lowp vec4 instance_color; +#if defined(ENABLE_INSTANCE_CUSTOM) +layout(location=12) in highp vec4 instance_custom_data; +#endif + #endif layout(std140) uniform SceneData { //ubo:0 @@ -157,9 +161,21 @@ out highp vec4 position_interp; void main() { highp vec4 vertex = vertex_attrib; // vec4(vertex_attrib.xyz * data_attrib.x,1.0); - highp mat4 modelview = camera_inverse_matrix * world_transform; + + mat4 world_matrix = world_transform; + + +#ifdef USE_INSTANCING + + { + highp mat4 m=mat4(instance_xform0,instance_xform1,instance_xform2,vec4(0.0,0.0,0.0,1.0)); + world_matrix = world_matrix * transpose(m); + } +#endif + vec3 normal = normal_attrib * normal_mult; + #if defined(ENABLE_TANGENT_INTERP) || defined(ENABLE_NORMALMAP) || defined(LIGHT_USE_ANISOTROPY) vec3 tangent = tangent_attrib.xyz; tangent*=normal_mult; @@ -168,6 +184,10 @@ void main() { #if defined(ENABLE_COLOR_INTERP) color_interp = color_attrib; +#if defined(USE_INSTANCING) + color_interp *= instance_color; +#endif + #endif #ifdef USE_SKELETON @@ -215,40 +235,12 @@ void main() { } #endif -#ifdef USE_INSTANCING - - { - highp mat3x4 m=mat3x4(instance_xform0,instance_xform1,instance_xform2); - vertex.xyz = vertex * m; - normal = vec4(normal,0.0) * m; #if defined(ENABLE_TANGENT_INTERP) || defined(ENABLE_NORMALMAP) || defined(LIGHT_USE_ANISOTROPY) - tangent.xyz = vec4(tangent.xyz,0.0) * mn; -#endif -#if defined(ENABLE_COLOR_INTERP) - color_interp*=instance_color; -#endif - } -#endif //USE_INSTANCING - -#if !defined(SKIP_TRANSFORM_USED) - - vertex = modelview * vertex; - normal = normalize((modelview * vec4(normal,0.0)).xyz); -#endif - -#if defined(ENABLE_TANGENT_INTERP) || defined(ENABLE_NORMALMAP) || defined(LIGHT_USE_ANISOTROPY) -# if !defined(SKIP_TRANSFORM_USED) - - tangent=normalize((modelview * vec4(tangent,0.0)).xyz); -# endif vec3 binormal = normalize( cross(normal,tangent) * binormalf ); #endif - - - #if defined(ENABLE_UV_INTERP) uv_interp = uv_attrib; #endif @@ -257,16 +249,45 @@ void main() { uv2_interp = uv2_attrib; #endif +#if defined(USE_INSTANCING) && defined(ENABLE_INSTANCE_CUSTOM) + vec4 instance_custom = instance_custom_data; +#else + vec4 instance_custom = vec4(0.0); +#endif + + highp mat4 modelview = camera_inverse_matrix * world_matrix; + highp mat4 local_projection = projection_matrix; + +//defines that make writing custom shaders easier +#define projection_matrix local_projection +#define world_transform world_matrix { VERTEX_SHADER_CODE } + + + +#if !defined(SKIP_TRANSFORM_USED) + + vertex = modelview * vertex; + normal = normalize((modelview * vec4(normal,0.0)).xyz); +#endif + + vertex_interp = vertex.xyz; normal_interp = normal; #if defined(ENABLE_TANGENT_INTERP) || defined(ENABLE_NORMALMAP) || defined(LIGHT_USE_ANISOTROPY) + +#if !defined(SKIP_TRANSFORM_USED) + + tangent = normalize((modelview * vec4(tangent,0.0)).xyz); + binormal = normalize((modelview * vec4(binormal,0.0)).xyz); + +#endif tangent_interp = tangent; binormal_interp = binormal; #endif diff --git a/drivers/png/image_loader_png.cpp b/drivers/png/image_loader_png.cpp index c524bee43c..c9677bed11 100644 --- a/drivers/png/image_loader_png.cpp +++ b/drivers/png/image_loader_png.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/png/image_loader_png.h b/drivers/png/image_loader_png.h index 00a64c5537..78e4252e26 100644 --- a/drivers/png/image_loader_png.h +++ b/drivers/png/image_loader_png.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/png/resource_saver_png.cpp b/drivers/png/resource_saver_png.cpp index ce1ffde1c8..b754ef97b4 100644 --- a/drivers/png/resource_saver_png.cpp +++ b/drivers/png/resource_saver_png.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/png/resource_saver_png.h b/drivers/png/resource_saver_png.h index ebc8d8e3ae..c25a01c1f6 100644 --- a/drivers/png/resource_saver_png.h +++ b/drivers/png/resource_saver_png.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/pulseaudio/audio_driver_pulseaudio.cpp b/drivers/pulseaudio/audio_driver_pulseaudio.cpp index d33ec3ce3a..9aaf5c129b 100644 --- a/drivers/pulseaudio/audio_driver_pulseaudio.cpp +++ b/drivers/pulseaudio/audio_driver_pulseaudio.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/pulseaudio/audio_driver_pulseaudio.h b/drivers/pulseaudio/audio_driver_pulseaudio.h index b6508434d4..3ce031e616 100644 --- a/drivers/pulseaudio/audio_driver_pulseaudio.h +++ b/drivers/pulseaudio/audio_driver_pulseaudio.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/register_driver_types.cpp b/drivers/register_driver_types.cpp index 9540a16089..ca2f03c75a 100644 --- a/drivers/register_driver_types.cpp +++ b/drivers/register_driver_types.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/register_driver_types.h b/drivers/register_driver_types.h index 9a79d79ab8..63c50f6720 100644 --- a/drivers/register_driver_types.h +++ b/drivers/register_driver_types.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/rtaudio/audio_driver_rtaudio.cpp b/drivers/rtaudio/audio_driver_rtaudio.cpp index 5ecd4cbaec..0cbe145b41 100644 --- a/drivers/rtaudio/audio_driver_rtaudio.cpp +++ b/drivers/rtaudio/audio_driver_rtaudio.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/rtaudio/audio_driver_rtaudio.h b/drivers/rtaudio/audio_driver_rtaudio.h index e7b480b7b2..c2a18b2731 100644 --- a/drivers/rtaudio/audio_driver_rtaudio.h +++ b/drivers/rtaudio/audio_driver_rtaudio.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/unix/dir_access_unix.cpp b/drivers/unix/dir_access_unix.cpp index d3c7a42c70..cf54f3fea0 100644 --- a/drivers/unix/dir_access_unix.cpp +++ b/drivers/unix/dir_access_unix.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/unix/dir_access_unix.h b/drivers/unix/dir_access_unix.h index 0ec0e551d7..5a35cdf2e9 100644 --- a/drivers/unix/dir_access_unix.h +++ b/drivers/unix/dir_access_unix.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/unix/file_access_unix.cpp b/drivers/unix/file_access_unix.cpp index 723bf3321a..e2f04aec63 100644 --- a/drivers/unix/file_access_unix.cpp +++ b/drivers/unix/file_access_unix.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/unix/file_access_unix.h b/drivers/unix/file_access_unix.h index 4b5897e9a5..3c4b9c0c25 100644 --- a/drivers/unix/file_access_unix.h +++ b/drivers/unix/file_access_unix.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/unix/ip_unix.cpp b/drivers/unix/ip_unix.cpp index 0a26b5bbba..1becf3accb 100644 --- a/drivers/unix/ip_unix.cpp +++ b/drivers/unix/ip_unix.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/unix/ip_unix.h b/drivers/unix/ip_unix.h index c22fedfe1c..952d3a8771 100644 --- a/drivers/unix/ip_unix.h +++ b/drivers/unix/ip_unix.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/unix/mutex_posix.cpp b/drivers/unix/mutex_posix.cpp index 9009da2065..94cfcf78e3 100644 --- a/drivers/unix/mutex_posix.cpp +++ b/drivers/unix/mutex_posix.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/unix/mutex_posix.h b/drivers/unix/mutex_posix.h index 84fb32b844..b3c0cbe051 100644 --- a/drivers/unix/mutex_posix.h +++ b/drivers/unix/mutex_posix.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/unix/os_unix.cpp b/drivers/unix/os_unix.cpp index ea765e8f8a..75f40cacca 100644 --- a/drivers/unix/os_unix.cpp +++ b/drivers/unix/os_unix.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/unix/os_unix.h b/drivers/unix/os_unix.h index ff259ab0f0..206559ab3d 100644 --- a/drivers/unix/os_unix.h +++ b/drivers/unix/os_unix.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/unix/packet_peer_udp_posix.cpp b/drivers/unix/packet_peer_udp_posix.cpp index e70e4fc349..5dbccd4b63 100644 --- a/drivers/unix/packet_peer_udp_posix.cpp +++ b/drivers/unix/packet_peer_udp_posix.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/unix/packet_peer_udp_posix.h b/drivers/unix/packet_peer_udp_posix.h index 60d5bf6580..a52b8b8e95 100644 --- a/drivers/unix/packet_peer_udp_posix.h +++ b/drivers/unix/packet_peer_udp_posix.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/unix/rw_lock_posix.cpp b/drivers/unix/rw_lock_posix.cpp index 9c9ad26165..25bc8f0bd3 100644 --- a/drivers/unix/rw_lock_posix.cpp +++ b/drivers/unix/rw_lock_posix.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/unix/rw_lock_posix.h b/drivers/unix/rw_lock_posix.h index 429b5c22d7..f8199aeb54 100644 --- a/drivers/unix/rw_lock_posix.h +++ b/drivers/unix/rw_lock_posix.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/unix/semaphore_posix.cpp b/drivers/unix/semaphore_posix.cpp index 69f499bb52..8b553194db 100644 --- a/drivers/unix/semaphore_posix.cpp +++ b/drivers/unix/semaphore_posix.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/unix/semaphore_posix.h b/drivers/unix/semaphore_posix.h index 66e10db3c3..c7a7f9bd87 100644 --- a/drivers/unix/semaphore_posix.h +++ b/drivers/unix/semaphore_posix.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/unix/socket_helpers.h b/drivers/unix/socket_helpers.h index d27328a01e..8e54afcdba 100644 --- a/drivers/unix/socket_helpers.h +++ b/drivers/unix/socket_helpers.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/unix/stream_peer_tcp_posix.cpp b/drivers/unix/stream_peer_tcp_posix.cpp index fc4838f1e0..30843e4947 100644 --- a/drivers/unix/stream_peer_tcp_posix.cpp +++ b/drivers/unix/stream_peer_tcp_posix.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/unix/stream_peer_tcp_posix.h b/drivers/unix/stream_peer_tcp_posix.h index ef98f2ab83..3f28f82b50 100644 --- a/drivers/unix/stream_peer_tcp_posix.h +++ b/drivers/unix/stream_peer_tcp_posix.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/unix/tcp_server_posix.cpp b/drivers/unix/tcp_server_posix.cpp index 9049faebb8..865e9aa1d6 100644 --- a/drivers/unix/tcp_server_posix.cpp +++ b/drivers/unix/tcp_server_posix.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/unix/tcp_server_posix.h b/drivers/unix/tcp_server_posix.h index 408179c197..659b389fe2 100644 --- a/drivers/unix/tcp_server_posix.h +++ b/drivers/unix/tcp_server_posix.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/unix/thread_posix.cpp b/drivers/unix/thread_posix.cpp index c33cc8cc5d..c1559619d7 100644 --- a/drivers/unix/thread_posix.cpp +++ b/drivers/unix/thread_posix.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/unix/thread_posix.h b/drivers/unix/thread_posix.h index a756ed972c..c0c3e578bb 100644 --- a/drivers/unix/thread_posix.h +++ b/drivers/unix/thread_posix.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/windows/dir_access_windows.cpp b/drivers/windows/dir_access_windows.cpp index b0710b2c36..76665f0203 100644 --- a/drivers/windows/dir_access_windows.cpp +++ b/drivers/windows/dir_access_windows.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/windows/dir_access_windows.h b/drivers/windows/dir_access_windows.h index e0815f2c09..f7553f50c2 100644 --- a/drivers/windows/dir_access_windows.h +++ b/drivers/windows/dir_access_windows.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/windows/file_access_windows.cpp b/drivers/windows/file_access_windows.cpp index 0bb6c1d196..c66da2da29 100644 --- a/drivers/windows/file_access_windows.cpp +++ b/drivers/windows/file_access_windows.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/windows/file_access_windows.h b/drivers/windows/file_access_windows.h index d64a4b98fc..de5fc2bc09 100644 --- a/drivers/windows/file_access_windows.h +++ b/drivers/windows/file_access_windows.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/windows/mutex_windows.cpp b/drivers/windows/mutex_windows.cpp index bacf89efbb..7d9bc22e51 100644 --- a/drivers/windows/mutex_windows.cpp +++ b/drivers/windows/mutex_windows.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/windows/mutex_windows.h b/drivers/windows/mutex_windows.h index 0c6cbd472a..2e000a43f5 100644 --- a/drivers/windows/mutex_windows.h +++ b/drivers/windows/mutex_windows.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/windows/rw_lock_windows.cpp b/drivers/windows/rw_lock_windows.cpp index 615bcd22aa..e2213be9c1 100644 --- a/drivers/windows/rw_lock_windows.cpp +++ b/drivers/windows/rw_lock_windows.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/windows/rw_lock_windows.h b/drivers/windows/rw_lock_windows.h index e4b5367c2f..eb030d6029 100644 --- a/drivers/windows/rw_lock_windows.h +++ b/drivers/windows/rw_lock_windows.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/windows/semaphore_windows.cpp b/drivers/windows/semaphore_windows.cpp index b1c9ee0182..3a5c0b054c 100644 --- a/drivers/windows/semaphore_windows.cpp +++ b/drivers/windows/semaphore_windows.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/windows/semaphore_windows.h b/drivers/windows/semaphore_windows.h index 5594cb0c58..90aacc7e26 100644 --- a/drivers/windows/semaphore_windows.h +++ b/drivers/windows/semaphore_windows.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/windows/shell_windows.cpp b/drivers/windows/shell_windows.cpp index 715d886ed2..17ff9fe962 100644 --- a/drivers/windows/shell_windows.cpp +++ b/drivers/windows/shell_windows.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/windows/shell_windows.h b/drivers/windows/shell_windows.h index e0baf3e765..d94c5812d1 100644 --- a/drivers/windows/shell_windows.h +++ b/drivers/windows/shell_windows.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/windows/thread_windows.cpp b/drivers/windows/thread_windows.cpp index e6143b4af3..79077a54c8 100644 --- a/drivers/windows/thread_windows.cpp +++ b/drivers/windows/thread_windows.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/windows/thread_windows.h b/drivers/windows/thread_windows.h index 5b2c076c7f..162df08975 100644 --- a/drivers/windows/thread_windows.h +++ b/drivers/windows/thread_windows.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/xaudio2/audio_driver_xaudio2.cpp b/drivers/xaudio2/audio_driver_xaudio2.cpp index 546bbff1ba..23ba177824 100644 --- a/drivers/xaudio2/audio_driver_xaudio2.cpp +++ b/drivers/xaudio2/audio_driver_xaudio2.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/drivers/xaudio2/audio_driver_xaudio2.h b/drivers/xaudio2/audio_driver_xaudio2.h index 9a37ba7a7b..8d240de02e 100644 --- a/drivers/xaudio2/audio_driver_xaudio2.h +++ b/drivers/xaudio2/audio_driver_xaudio2.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/animation_editor.cpp b/editor/animation_editor.cpp index fe342b0ee8..16606b5d12 100644 --- a/editor/animation_editor.cpp +++ b/editor/animation_editor.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/animation_editor.h b/editor/animation_editor.h index a775ad160b..0f6cc95634 100644 --- a/editor/animation_editor.h +++ b/editor/animation_editor.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/array_property_edit.cpp b/editor/array_property_edit.cpp index 62415f4993..81d5309712 100644 --- a/editor/array_property_edit.cpp +++ b/editor/array_property_edit.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/array_property_edit.h b/editor/array_property_edit.h index 1461aa52a3..1bc82e22a1 100644 --- a/editor/array_property_edit.h +++ b/editor/array_property_edit.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/asset_library_editor_plugin.cpp b/editor/asset_library_editor_plugin.cpp index 7bfe52d1b4..ca99541bbd 100644 --- a/editor/asset_library_editor_plugin.cpp +++ b/editor/asset_library_editor_plugin.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/asset_library_editor_plugin.h b/editor/asset_library_editor_plugin.h index bdfd52cf4f..9e4a240101 100644 --- a/editor/asset_library_editor_plugin.h +++ b/editor/asset_library_editor_plugin.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/call_dialog.cpp b/editor/call_dialog.cpp index 7a8290c58d..d2b46863b0 100644 --- a/editor/call_dialog.cpp +++ b/editor/call_dialog.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/call_dialog.h b/editor/call_dialog.h index f3dbe6458b..ab833c8dd3 100644 --- a/editor/call_dialog.h +++ b/editor/call_dialog.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/code_editor.cpp b/editor/code_editor.cpp index c4f836f3e4..cc20912612 100644 --- a/editor/code_editor.cpp +++ b/editor/code_editor.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/code_editor.h b/editor/code_editor.h index 8fa52b03f7..44d526fda9 100644 --- a/editor/code_editor.h +++ b/editor/code_editor.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/collada/collada.cpp b/editor/collada/collada.cpp index 4705810eca..2f234c441a 100644 --- a/editor/collada/collada.cpp +++ b/editor/collada/collada.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/collada/collada.h b/editor/collada/collada.h index 23b3aef670..ca60c392dd 100644 --- a/editor/collada/collada.h +++ b/editor/collada/collada.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/connections_dialog.cpp b/editor/connections_dialog.cpp index 49990c4340..9c6624d9e5 100644 --- a/editor/connections_dialog.cpp +++ b/editor/connections_dialog.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/connections_dialog.h b/editor/connections_dialog.h index 240e3655ed..bff85941cb 100644 --- a/editor/connections_dialog.h +++ b/editor/connections_dialog.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/create_dialog.cpp b/editor/create_dialog.cpp index 0e2ec92fde..dc28fc9020 100644 --- a/editor/create_dialog.cpp +++ b/editor/create_dialog.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/create_dialog.h b/editor/create_dialog.h index 5f0b16bc34..6170149c6b 100644 --- a/editor/create_dialog.h +++ b/editor/create_dialog.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/dependency_editor.cpp b/editor/dependency_editor.cpp index 64c3cc1c00..3533c0993f 100644 --- a/editor/dependency_editor.cpp +++ b/editor/dependency_editor.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/dependency_editor.h b/editor/dependency_editor.h index bd0e1f8b07..e7344bbf13 100644 --- a/editor/dependency_editor.h +++ b/editor/dependency_editor.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/doc/doc_data.cpp b/editor/doc/doc_data.cpp index c6a51cce3d..af95f8d919 100644 --- a/editor/doc/doc_data.cpp +++ b/editor/doc/doc_data.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/doc/doc_data.h b/editor/doc/doc_data.h index b4bd63e6ee..41dfae428a 100644 --- a/editor/doc/doc_data.h +++ b/editor/doc/doc_data.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/doc/doc_dump.cpp b/editor/doc/doc_dump.cpp index 38b61d706d..bda4d80f4d 100644 --- a/editor/doc/doc_dump.cpp +++ b/editor/doc/doc_dump.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/doc/doc_dump.h b/editor/doc/doc_dump.h index 6d6782788f..300ce916ee 100644 --- a/editor/doc/doc_dump.h +++ b/editor/doc/doc_dump.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/doc_code_font.h b/editor/doc_code_font.h index e3874214f5..8fbfa7b1d6 100644 --- a/editor/doc_code_font.h +++ b/editor/doc_code_font.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/doc_font.h b/editor/doc_font.h index c146f04cd8..a3d41bb8ef 100644 --- a/editor/doc_font.h +++ b/editor/doc_font.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/doc_title_font.h b/editor/doc_title_font.h index bb8a394807..14da323aa7 100644 --- a/editor/doc_title_font.h +++ b/editor/doc_title_font.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/editor_asset_installer.cpp b/editor/editor_asset_installer.cpp index dfe63aacc2..5a54f9b46f 100644 --- a/editor/editor_asset_installer.cpp +++ b/editor/editor_asset_installer.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/editor_asset_installer.h b/editor/editor_asset_installer.h index 046387520e..e74bd6925b 100644 --- a/editor/editor_asset_installer.h +++ b/editor/editor_asset_installer.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/editor_audio_buses.cpp b/editor/editor_audio_buses.cpp index 36cb95a373..67d9977149 100644 --- a/editor/editor_audio_buses.cpp +++ b/editor/editor_audio_buses.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/editor_audio_buses.h b/editor/editor_audio_buses.h index 06a9c01bf0..4a3d784796 100644 --- a/editor/editor_audio_buses.h +++ b/editor/editor_audio_buses.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/editor_autoload_settings.cpp b/editor/editor_autoload_settings.cpp index 67e8c63e51..b83ac69141 100644 --- a/editor/editor_autoload_settings.cpp +++ b/editor/editor_autoload_settings.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/editor_autoload_settings.h b/editor/editor_autoload_settings.h index 8eb6140180..4a2e5b48e2 100644 --- a/editor/editor_autoload_settings.h +++ b/editor/editor_autoload_settings.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/editor_data.cpp b/editor/editor_data.cpp index d92a348df9..31c1402c8f 100644 --- a/editor/editor_data.cpp +++ b/editor/editor_data.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/editor_data.h b/editor/editor_data.h index 598cde2318..50f0d5fd41 100644 --- a/editor/editor_data.h +++ b/editor/editor_data.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/editor_dir_dialog.cpp b/editor/editor_dir_dialog.cpp index 5cd277e218..9f8331febd 100644 --- a/editor/editor_dir_dialog.cpp +++ b/editor/editor_dir_dialog.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/editor_dir_dialog.h b/editor/editor_dir_dialog.h index 2f2385e971..0fdb71b0a1 100644 --- a/editor/editor_dir_dialog.h +++ b/editor/editor_dir_dialog.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/editor_export.cpp b/editor/editor_export.cpp index e20744e424..7dc5db4c7d 100644 --- a/editor/editor_export.cpp +++ b/editor/editor_export.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/editor_export.h b/editor/editor_export.h index 966c3cb63b..a78762ad80 100644 --- a/editor/editor_export.h +++ b/editor/editor_export.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/editor_file_dialog.cpp b/editor/editor_file_dialog.cpp index bde0fd90cf..1f97aba221 100644 --- a/editor/editor_file_dialog.cpp +++ b/editor/editor_file_dialog.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/editor_file_dialog.h b/editor/editor_file_dialog.h index 21b764e85b..f8c85c4ad1 100644 --- a/editor/editor_file_dialog.h +++ b/editor/editor_file_dialog.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/editor_file_system.cpp b/editor/editor_file_system.cpp index b188a5760b..2612a2af16 100644 --- a/editor/editor_file_system.cpp +++ b/editor/editor_file_system.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -789,7 +790,7 @@ void EditorFileSystem::_scan_fs_changes(EditorFileSystemDirectory *p_dir, const } else { uint64_t import_mt = FileAccess::get_modified_time(path + ".import"); - print_line(itos(import_mt) + " vs " + itos(p_dir->files[i]->import_modified_time)); + //print_line(itos(import_mt) + " vs " + itos(p_dir->files[i]->import_modified_time)); if (import_mt != p_dir->files[i]->import_modified_time) { print_line("REIMPORT: import modified changed, reimport"); reimport = true; diff --git a/editor/editor_file_system.h b/editor/editor_file_system.h index da78ba9cfb..b5d61d47d3 100644 --- a/editor/editor_file_system.h +++ b/editor/editor_file_system.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/editor_fonts.cpp b/editor/editor_fonts.cpp index 8bfacb4a26..dc4c2b21bc 100644 --- a/editor/editor_fonts.cpp +++ b/editor/editor_fonts.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/editor_fonts.h b/editor/editor_fonts.h index 0e8ce20609..1698093cca 100644 --- a/editor/editor_fonts.h +++ b/editor/editor_fonts.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/editor_help.cpp b/editor/editor_help.cpp index 3b2f187af5..11fa9396a0 100644 --- a/editor/editor_help.cpp +++ b/editor/editor_help.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/editor_help.h b/editor/editor_help.h index 06b64edf78..d22d61b91d 100644 --- a/editor/editor_help.h +++ b/editor/editor_help.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/editor_icons.h b/editor/editor_icons.h index 7e8d8c0828..760bb4421c 100644 --- a/editor/editor_icons.h +++ b/editor/editor_icons.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/editor_initialize_ssl.cpp b/editor/editor_initialize_ssl.cpp index 7801b312b3..23a033f6fb 100644 --- a/editor/editor_initialize_ssl.cpp +++ b/editor/editor_initialize_ssl.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/editor_initialize_ssl.h b/editor/editor_initialize_ssl.h index 0b34ac1d7e..fb289f5dfd 100644 --- a/editor/editor_initialize_ssl.h +++ b/editor/editor_initialize_ssl.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/editor_log.cpp b/editor/editor_log.cpp index 60837d900e..c15eac67fb 100644 --- a/editor/editor_log.cpp +++ b/editor/editor_log.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/editor_log.h b/editor/editor_log.h index 3debbfecd4..1c180df5f7 100644 --- a/editor/editor_log.h +++ b/editor/editor_log.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/editor_name_dialog.cpp b/editor/editor_name_dialog.cpp index b8fa534ddb..972857fd88 100644 --- a/editor/editor_name_dialog.cpp +++ b/editor/editor_name_dialog.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/editor_name_dialog.h b/editor/editor_name_dialog.h index 5b65abef84..a98db4ffe6 100644 --- a/editor/editor_name_dialog.h +++ b/editor/editor_name_dialog.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/editor_node.cpp b/editor/editor_node.cpp index 03a241855b..1bd91d753f 100644 --- a/editor/editor_node.cpp +++ b/editor/editor_node.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -73,7 +74,9 @@ #include "plugins/collision_shape_2d_editor_plugin.h" #include "plugins/color_ramp_editor_plugin.h" #include "plugins/cube_grid_theme_editor_plugin.h" +#include "plugins/curve_editor_plugin.h" #include "plugins/gi_probe_editor_plugin.h" +#include "plugins/gradient_texture_editor_plugin.h" #include "plugins/item_list_editor_plugin.h" #include "plugins/light_occluder_2d_editor_plugin.h" #include "plugins/line_2d_editor_plugin.h" @@ -5909,7 +5912,7 @@ EditorNode::EditorNode() { //add_editor_plugin( memnew( MeshLibraryEditorPlugin(this) ) ); //add_editor_plugin( memnew( StreamEditorPlugin(this) ) ); add_editor_plugin(memnew(StyleBoxEditorPlugin(this))); - //add_editor_plugin( memnew( ParticlesEditorPlugin(this) ) ); + add_editor_plugin(memnew(ParticlesEditorPlugin(this))); add_editor_plugin(memnew(ResourcePreloaderEditorPlugin(this))); add_editor_plugin(memnew(ItemListEditorPlugin(this))); //add_editor_plugin( memnew( RichTextEditorPlugin(this) ) ); @@ -5929,7 +5932,9 @@ EditorNode::EditorNode() { add_editor_plugin(memnew(LightOccluder2DEditorPlugin(this))); add_editor_plugin(memnew(NavigationPolygonEditorPlugin(this))); add_editor_plugin(memnew(ColorRampEditorPlugin(this))); + add_editor_plugin(memnew(GradientTextureEditorPlugin(this))); add_editor_plugin(memnew(CollisionShape2DEditorPlugin(this))); + add_editor_plugin(memnew(CurveTextureEditorPlugin(this))); add_editor_plugin(memnew(TextureEditorPlugin(this))); add_editor_plugin(memnew(AudioBusesEditorPlugin(audio_bus_editor))); //add_editor_plugin( memnew( MaterialEditorPlugin(this) ) ); diff --git a/editor/editor_node.h b/editor/editor_node.h index 5182650abc..e7f4085fc5 100644 --- a/editor/editor_node.h +++ b/editor/editor_node.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/editor_path.cpp b/editor/editor_path.cpp index 0200278dc0..33dc30fb73 100644 --- a/editor/editor_path.cpp +++ b/editor/editor_path.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/editor_path.h b/editor/editor_path.h index d781f6609a..a142cba44c 100644 --- a/editor/editor_path.h +++ b/editor/editor_path.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/editor_plugin.cpp b/editor/editor_plugin.cpp index 2579871d78..405784a7e2 100644 --- a/editor/editor_plugin.cpp +++ b/editor/editor_plugin.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/editor_plugin.h b/editor/editor_plugin.h index 611ef72945..5df1f63fbe 100644 --- a/editor/editor_plugin.h +++ b/editor/editor_plugin.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/editor_plugin_settings.cpp b/editor/editor_plugin_settings.cpp index 3e7b225a8d..40ac95e2b5 100644 --- a/editor/editor_plugin_settings.cpp +++ b/editor/editor_plugin_settings.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/editor_plugin_settings.h b/editor/editor_plugin_settings.h index faad933130..472be4c007 100644 --- a/editor/editor_plugin_settings.h +++ b/editor/editor_plugin_settings.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/editor_profiler.cpp b/editor/editor_profiler.cpp index 1199779cb8..8f4312111a 100644 --- a/editor/editor_profiler.cpp +++ b/editor/editor_profiler.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/editor_profiler.h b/editor/editor_profiler.h index c084859942..35b5ae366c 100644 --- a/editor/editor_profiler.h +++ b/editor/editor_profiler.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/editor_reimport_dialog.cpp b/editor/editor_reimport_dialog.cpp index 5904070230..4b71f7046f 100644 --- a/editor/editor_reimport_dialog.cpp +++ b/editor/editor_reimport_dialog.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/editor_reimport_dialog.h b/editor/editor_reimport_dialog.h index 7379c70c5e..b067630ded 100644 --- a/editor/editor_reimport_dialog.h +++ b/editor/editor_reimport_dialog.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/editor_resource_preview.cpp b/editor/editor_resource_preview.cpp index 281602021f..0b1887e8a2 100644 --- a/editor/editor_resource_preview.cpp +++ b/editor/editor_resource_preview.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/editor_resource_preview.h b/editor/editor_resource_preview.h index ebb280a8cf..1bfa094a38 100644 --- a/editor/editor_resource_preview.h +++ b/editor/editor_resource_preview.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/editor_run.cpp b/editor/editor_run.cpp index 99d32ea958..d36b8cece5 100644 --- a/editor/editor_run.cpp +++ b/editor/editor_run.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/editor_run.h b/editor/editor_run.h index 796ff8fa3e..aa698ffad1 100644 --- a/editor/editor_run.h +++ b/editor/editor_run.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/editor_run_native.cpp b/editor/editor_run_native.cpp index fa835ef76a..5a519a1dbd 100644 --- a/editor/editor_run_native.cpp +++ b/editor/editor_run_native.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/editor_run_native.h b/editor/editor_run_native.h index 63c3f02717..9dcfd88eb8 100644 --- a/editor/editor_run_native.h +++ b/editor/editor_run_native.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/editor_run_script.cpp b/editor/editor_run_script.cpp index 21c97b4587..8bd1b8f4fd 100644 --- a/editor/editor_run_script.cpp +++ b/editor/editor_run_script.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/editor_run_script.h b/editor/editor_run_script.h index 270600db69..2c3b4b85ce 100644 --- a/editor/editor_run_script.h +++ b/editor/editor_run_script.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/editor_scale.cpp b/editor/editor_scale.cpp index 027f1edc28..1238cbb405 100644 --- a/editor/editor_scale.cpp +++ b/editor/editor_scale.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/editor_scale.h b/editor/editor_scale.h index 035a5056c1..953be2ef81 100644 --- a/editor/editor_scale.h +++ b/editor/editor_scale.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/editor_settings.cpp b/editor/editor_settings.cpp index 2cdf076440..8ea5d16bbf 100644 --- a/editor/editor_settings.cpp +++ b/editor/editor_settings.cpp @@ -6,6 +6,7 @@ /* http:/www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/editor_settings.h b/editor/editor_settings.h index 4e084e5291..a876f23134 100644 --- a/editor/editor_settings.h +++ b/editor/editor_settings.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/editor_sub_scene.cpp b/editor/editor_sub_scene.cpp index 01c08bb231..c107d3687e 100644 --- a/editor/editor_sub_scene.cpp +++ b/editor/editor_sub_scene.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/editor_sub_scene.h b/editor/editor_sub_scene.h index 9739f49a45..3a11a13b53 100644 --- a/editor/editor_sub_scene.h +++ b/editor/editor_sub_scene.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/editor_themes.cpp b/editor/editor_themes.cpp index adb4c8162e..3b5dbf7fc7 100644 --- a/editor/editor_themes.cpp +++ b/editor/editor_themes.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/editor_themes.h b/editor/editor_themes.h index bf15420917..2ebefee6f3 100644 --- a/editor/editor_themes.h +++ b/editor/editor_themes.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/file_type_cache.cpp b/editor/file_type_cache.cpp index 7db0182a37..de6ee171ae 100644 --- a/editor/file_type_cache.cpp +++ b/editor/file_type_cache.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/file_type_cache.h b/editor/file_type_cache.h index fa2c7b46af..a434384eb4 100644 --- a/editor/file_type_cache.h +++ b/editor/file_type_cache.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/fileserver/editor_file_server.cpp b/editor/fileserver/editor_file_server.cpp index 20a4809e36..7e168c54be 100644 --- a/editor/fileserver/editor_file_server.cpp +++ b/editor/fileserver/editor_file_server.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/fileserver/editor_file_server.h b/editor/fileserver/editor_file_server.h index cf97f685f7..01b84627b7 100644 --- a/editor/fileserver/editor_file_server.h +++ b/editor/fileserver/editor_file_server.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/filesystem_dock.cpp b/editor/filesystem_dock.cpp index 3e0a2c712a..79bce2c150 100644 --- a/editor/filesystem_dock.cpp +++ b/editor/filesystem_dock.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/filesystem_dock.h b/editor/filesystem_dock.h index 1a4b5ae977..2b85cfa96d 100644 --- a/editor/filesystem_dock.h +++ b/editor/filesystem_dock.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/groups_editor.cpp b/editor/groups_editor.cpp index c9e9acd7f2..ea1827f16f 100644 --- a/editor/groups_editor.cpp +++ b/editor/groups_editor.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/groups_editor.h b/editor/groups_editor.h index 2b27a3a70c..acbe60c21f 100644 --- a/editor/groups_editor.h +++ b/editor/groups_editor.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/import/editor_import_collada.cpp b/editor/import/editor_import_collada.cpp index 93614fb511..dcbc509865 100644 --- a/editor/import/editor_import_collada.cpp +++ b/editor/import/editor_import_collada.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -364,7 +365,7 @@ Error ColladaImport::_create_material(const String &p_target) { ERR_FAIL_COND_V(!collada.state.effect_map.has(src_mat.instance_effect), ERR_INVALID_PARAMETER); Collada::Effect &effect = collada.state.effect_map[src_mat.instance_effect]; - Ref<FixedSpatialMaterial> material = memnew(FixedSpatialMaterial); + Ref<SpatialMaterial> material = memnew(SpatialMaterial); if (src_mat.name != "") material->set_name(src_mat.name); @@ -381,15 +382,15 @@ Error ColladaImport::_create_material(const String &p_target) { Ref<Texture> texture = ResourceLoader::load(texfile, "Texture"); if (texture.is_valid()) { - material->set_texture(FixedSpatialMaterial::TEXTURE_ALBEDO, texture); + material->set_texture(SpatialMaterial::TEXTURE_ALBEDO, texture); material->set_albedo(Color(1, 1, 1, 1)); - //material->set_parameter(FixedSpatialMaterial::PARAM_DIFFUSE,Color(1,1,1,1)); + //material->set_parameter(SpatialMaterial::PARAM_DIFFUSE,Color(1,1,1,1)); } else { missing_textures.push_back(texfile.get_file()); } } } else { - //material->set_parameter(FixedSpatialMaterial::PARAM_DIFFUSE,effect.diffuse.color); + //material->set_parameter(SpatialMaterial::PARAM_DIFFUSE,effect.diffuse.color); } // SPECULAR @@ -401,11 +402,11 @@ Error ColladaImport::_create_material(const String &p_target) { Ref<Texture> texture = ResourceLoader::load(texfile, "Texture"); if (texture.is_valid()) { - material->set_texture(FixedSpatialMaterial::TEXTURE_SPECULAR, texture); + material->set_texture(SpatialMaterial::TEXTURE_SPECULAR, texture); material->set_specular(Color(1, 1, 1, 1)); - //material->set_texture(FixedSpatialMaterial::PARAM_SPECULAR,texture); - //material->set_parameter(FixedSpatialMaterial::PARAM_SPECULAR,Color(1,1,1,1)); + //material->set_texture(SpatialMaterial::PARAM_SPECULAR,texture); + //material->set_parameter(SpatialMaterial::PARAM_SPECULAR,Color(1,1,1,1)); } else { missing_textures.push_back(texfile.get_file()); } @@ -424,18 +425,18 @@ Error ColladaImport::_create_material(const String &p_target) { Ref<Texture> texture = ResourceLoader::load(texfile, "Texture"); if (texture.is_valid()) { - material->set_feature(FixedSpatialMaterial::FEATURE_EMISSION, true); - material->set_texture(FixedSpatialMaterial::TEXTURE_EMISSION, texture); + material->set_feature(SpatialMaterial::FEATURE_EMISSION, true); + material->set_texture(SpatialMaterial::TEXTURE_EMISSION, texture); material->set_emission(Color(1, 1, 1, 1)); - //material->set_parameter(FixedSpatialMaterial::PARAM_EMISSION,Color(1,1,1,1)); + //material->set_parameter(SpatialMaterial::PARAM_EMISSION,Color(1,1,1,1)); } else { missing_textures.push_back(texfile.get_file()); } } } else { if (effect.emission.color != Color()) { - material->set_feature(FixedSpatialMaterial::FEATURE_EMISSION, true); + material->set_feature(SpatialMaterial::FEATURE_EMISSION, true); material->set_emission(effect.emission.color); } } @@ -449,11 +450,11 @@ Error ColladaImport::_create_material(const String &p_target) { Ref<Texture> texture = ResourceLoader::load(texfile, "Texture"); if (texture.is_valid()) { - material->set_feature(FixedSpatialMaterial::FEATURE_NORMAL_MAPPING, true); - material->set_texture(FixedSpatialMaterial::TEXTURE_NORMAL, texture); + material->set_feature(SpatialMaterial::FEATURE_NORMAL_MAPPING, true); + material->set_texture(SpatialMaterial::TEXTURE_NORMAL, texture); //material->set_emission(Color(1,1,1,1)); - //material->set_texture(FixedSpatialMaterial::PARAM_NORMAL,texture); + //material->set_texture(SpatialMaterial::PARAM_NORMAL,texture); } else { //missing_textures.push_back(texfile.get_file()); } @@ -464,9 +465,9 @@ Error ColladaImport::_create_material(const String &p_target) { material->set_roughness(roughness); if (effect.double_sided) { - material->set_cull_mode(FixedSpatialMaterial::CULL_DISABLED); + material->set_cull_mode(SpatialMaterial::CULL_DISABLED); } - material->set_flag(FixedSpatialMaterial::FLAG_UNSHADED, effect.unshaded); + material->set_flag(SpatialMaterial::FLAG_UNSHADED, effect.unshaded); material_cache[p_target] = material; return OK; @@ -1000,7 +1001,7 @@ Error ColladaImport::_create_mesh_surfaces(bool p_optimize, Ref<Mesh> &p_mesh, c { - Ref<FixedSpatialMaterial> material; + Ref<SpatialMaterial> material; //find material Mesh::PrimitiveType primitive = Mesh::PRIMITIVE_TRIANGLES; diff --git a/editor/import/editor_import_collada.h b/editor/import/editor_import_collada.h index f9e9c10980..2c60916d52 100644 --- a/editor/import/editor_import_collada.h +++ b/editor/import/editor_import_collada.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/import/resource_importer_csv_translation.cpp b/editor/import/resource_importer_csv_translation.cpp index 3be89920fb..ea43477dc3 100644 --- a/editor/import/resource_importer_csv_translation.cpp +++ b/editor/import/resource_importer_csv_translation.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/import/resource_importer_csv_translation.h b/editor/import/resource_importer_csv_translation.h index 8b1e1b5827..748c6264df 100644 --- a/editor/import/resource_importer_csv_translation.h +++ b/editor/import/resource_importer_csv_translation.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/import/resource_importer_obj.cpp b/editor/import/resource_importer_obj.cpp index 145071d4cb..19fd1208b9 100644 --- a/editor/import/resource_importer_obj.cpp +++ b/editor/import/resource_importer_obj.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/import/resource_importer_obj.h b/editor/import/resource_importer_obj.h index de2f2eceda..b7443c71a6 100644 --- a/editor/import/resource_importer_obj.h +++ b/editor/import/resource_importer_obj.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/import/resource_importer_scene.cpp b/editor/import/resource_importer_scene.cpp index 8a78376f13..755f4eb219 100644 --- a/editor/import/resource_importer_scene.cpp +++ b/editor/import/resource_importer_scene.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -157,7 +158,7 @@ Node *ResourceImporterScene::_fix_node(Node *p_node, Node *p_root, Map<Ref<Mesh> memdelete(p_node); return NULL; } - +#if 0 if (p_node->cast_to<MeshInstance>()) { MeshInstance *mi = p_node->cast_to<MeshInstance>(); @@ -177,18 +178,18 @@ Node *ResourceImporterScene::_fix_node(Node *p_node, Node *p_root, Map<Ref<Mesh> Ref<Mesh> m = mi->get_mesh(); for (int i = 0; i < m->get_surface_count(); i++) { - Ref<FixedSpatialMaterial> fm = m->surface_get_material(i); + Ref<SpatialMaterial> fm = m->surface_get_material(i); if (fm.is_valid()) { //fm->set_flag(Material::FLAG_UNSHADED,true); //fm->set_flag(Material::FLAG_DOUBLE_SIDED,true); //fm->set_depth_draw_mode(Material::DEPTH_DRAW_NEVER); - //fm->set_fixed_flag(FixedSpatialMaterial::FLAG_USE_ALPHA,true); + //fm->set_fixed_flag(SpatialMaterial::FLAG_USE_ALPHA,true); } } } } } - +#endif if (p_node->cast_to<MeshInstance>()) { MeshInstance *mi = p_node->cast_to<MeshInstance>(); @@ -199,19 +200,19 @@ Node *ResourceImporterScene::_fix_node(Node *p_node, Node *p_root, Map<Ref<Mesh> for (int i = 0; i < m->get_surface_count(); i++) { - Ref<FixedSpatialMaterial> mat = m->surface_get_material(i); + Ref<SpatialMaterial> mat = m->surface_get_material(i); if (!mat.is_valid()) continue; if (_teststr(mat->get_name(), "alpha")) { - mat->set_feature(FixedSpatialMaterial::FEATURE_TRANSPARENT, true); + mat->set_feature(SpatialMaterial::FEATURE_TRANSPARENT, true); mat->set_name(_fixstr(mat->get_name(), "alpha")); } if (_teststr(mat->get_name(), "vcol")) { - mat->set_flag(FixedSpatialMaterial::FLAG_ALBEDO_FROM_VERTEX_COLOR, true); - mat->set_flag(FixedSpatialMaterial::FLAG_SRGB_VERTEX_COLOR, true); + mat->set_flag(SpatialMaterial::FLAG_ALBEDO_FROM_VERTEX_COLOR, true); + mat->set_flag(SpatialMaterial::FLAG_SRGB_VERTEX_COLOR, true); mat->set_name(_fixstr(mat->get_name(), "vcol")); } } @@ -242,7 +243,7 @@ Node *ResourceImporterScene::_fix_node(Node *p_node, Node *p_root, Map<Ref<Mesh> } } } - +#if 0 if (p_node->cast_to<MeshInstance>()) { MeshInstance *mi = p_node->cast_to<MeshInstance>(); @@ -277,12 +278,12 @@ Node *ResourceImporterScene::_fix_node(Node *p_node, Node *p_root, Map<Ref<Mesh> Ref<Mesh> m = mi->get_mesh(); for (int i = 0; i < m->get_surface_count(); i++) { - Ref<FixedSpatialMaterial> fm = m->surface_get_material(i); + Ref<SpatialMaterial> fm = m->surface_get_material(i); if (fm.is_valid()) { //fm->set_flag(Material::FLAG_UNSHADED,true); //fm->set_flag(Material::FLAG_DOUBLE_SIDED,true); //fm->set_depth_draw_mode(Material::DEPTH_DRAW_NEVER); - //fm->set_fixed_flag(FixedSpatialMaterial::FLAG_USE_ALPHA,true); + //fm->set_fixed_flag(SpatialMaterial::FLAG_USE_ALPHA,true); } } } @@ -290,6 +291,8 @@ Node *ResourceImporterScene::_fix_node(Node *p_node, Node *p_root, Map<Ref<Mesh> } } } + +#endif #if 0 if (p_flags&SCENE_FLAG_CREATE_LODS && p_node->cast_to<MeshInstance>()) { @@ -325,12 +328,12 @@ Node *ResourceImporterScene::_fix_node(Node *p_node, Node *p_root, Map<Ref<Mesh> Ref<Mesh> m = mi->get_mesh(); for(int i=0;i<m->get_surface_count();i++) { - Ref<FixedSpatialMaterial> fm = m->surface_get_material(i); + Ref<SpatialMaterial> fm = m->surface_get_material(i); if (fm.is_valid()) { fm->set_flag(Material::FLAG_UNSHADED,true); fm->set_flag(Material::FLAG_DOUBLE_SIDED,true); fm->set_hint(Material::HINT_NO_DEPTH_DRAW,true); - fm->set_fixed_flag(FixedSpatialMaterial::FLAG_USE_ALPHA,true); + fm->set_fixed_flag(SpatialMaterial::FLAG_USE_ALPHA,true); } } }*/ @@ -687,16 +690,16 @@ Node *ResourceImporterScene::_fix_node(Node *p_node, Node *p_root, Map<Ref<Mesh> for (int i = 0; i < mesh->get_surface_count(); i++) { - Ref<FixedSpatialMaterial> fm = mesh->surface_get_material(i); + Ref<SpatialMaterial> fm = mesh->surface_get_material(i); if (fm.is_valid()) { String name = fm->get_name(); /* if (_teststr(name,"alpha")) { - fm->set_fixed_flag(FixedSpatialMaterial::FLAG_USE_ALPHA,true); + fm->set_fixed_flag(SpatialMaterial::FLAG_USE_ALPHA,true); name=_fixstr(name,"alpha"); } if (_teststr(name,"vcol")) { - fm->set_fixed_flag(FixedSpatialMaterial::FLAG_USE_COLOR_ARRAY,true); + fm->set_fixed_flag(SpatialMaterial::FLAG_USE_COLOR_ARRAY,true); name=_fixstr(name,"vcol"); }*/ fm->set_name(name); diff --git a/editor/import/resource_importer_scene.h b/editor/import/resource_importer_scene.h index 799d458837..9f7b1a84e6 100644 --- a/editor/import/resource_importer_scene.h +++ b/editor/import/resource_importer_scene.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/import/resource_importer_texture.cpp b/editor/import/resource_importer_texture.cpp index cb419e0f4a..f0dcc4a298 100644 --- a/editor/import/resource_importer_texture.cpp +++ b/editor/import/resource_importer_texture.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/import/resource_importer_texture.h b/editor/import/resource_importer_texture.h index 9be016884d..196eb48469 100644 --- a/editor/import/resource_importer_texture.h +++ b/editor/import/resource_importer_texture.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/import/resource_importer_wav.cpp b/editor/import/resource_importer_wav.cpp index 751fd36414..92c1aa47db 100644 --- a/editor/import/resource_importer_wav.cpp +++ b/editor/import/resource_importer_wav.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/import/resource_importer_wav.h b/editor/import/resource_importer_wav.h index b78ab1e7bf..6b4f86e641 100644 --- a/editor/import/resource_importer_wav.h +++ b/editor/import/resource_importer_wav.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/import_dock.cpp b/editor/import_dock.cpp index d245450114..6c7a633477 100644 --- a/editor/import_dock.cpp +++ b/editor/import_dock.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/import_dock.h b/editor/import_dock.h index 2c78b922eb..fc99fcc586 100644 --- a/editor/import_dock.h +++ b/editor/import_dock.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/inspector_dock.cpp b/editor/inspector_dock.cpp index 253f9bcc01..a644558521 100644 --- a/editor/inspector_dock.cpp +++ b/editor/inspector_dock.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/inspector_dock.h b/editor/inspector_dock.h index 83a7e5f54b..cee18f2d49 100644 --- a/editor/inspector_dock.h +++ b/editor/inspector_dock.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/io_plugins/editor_atlas.cpp b/editor/io_plugins/editor_atlas.cpp index 4be22c34c7..42800ee80d 100644 --- a/editor/io_plugins/editor_atlas.cpp +++ b/editor/io_plugins/editor_atlas.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/io_plugins/editor_atlas.h b/editor/io_plugins/editor_atlas.h index 1fb8a8ed4e..206897c8e5 100644 --- a/editor/io_plugins/editor_atlas.h +++ b/editor/io_plugins/editor_atlas.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/io_plugins/editor_bitmask_import_plugin.cpp b/editor/io_plugins/editor_bitmask_import_plugin.cpp index bccf6c262f..e508dc0a9d 100644 --- a/editor/io_plugins/editor_bitmask_import_plugin.cpp +++ b/editor/io_plugins/editor_bitmask_import_plugin.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/io_plugins/editor_bitmask_import_plugin.h b/editor/io_plugins/editor_bitmask_import_plugin.h index d1618d7843..b31ee9c86a 100644 --- a/editor/io_plugins/editor_bitmask_import_plugin.h +++ b/editor/io_plugins/editor_bitmask_import_plugin.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/io_plugins/editor_export_scene.cpp b/editor/io_plugins/editor_export_scene.cpp index e6066b9075..bdf9dc6844 100644 --- a/editor/io_plugins/editor_export_scene.cpp +++ b/editor/io_plugins/editor_export_scene.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/io_plugins/editor_export_scene.h b/editor/io_plugins/editor_export_scene.h index ac425fbedd..d8fe21adfc 100644 --- a/editor/io_plugins/editor_export_scene.h +++ b/editor/io_plugins/editor_export_scene.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/io_plugins/editor_font_import_plugin.cpp b/editor/io_plugins/editor_font_import_plugin.cpp index 2898d85de9..fa66328887 100644 --- a/editor/io_plugins/editor_font_import_plugin.cpp +++ b/editor/io_plugins/editor_font_import_plugin.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/io_plugins/editor_font_import_plugin.h b/editor/io_plugins/editor_font_import_plugin.h index 315a80e8cd..d204b8ea97 100644 --- a/editor/io_plugins/editor_font_import_plugin.h +++ b/editor/io_plugins/editor_font_import_plugin.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/io_plugins/editor_mesh_import_plugin.cpp b/editor/io_plugins/editor_mesh_import_plugin.cpp index f4d0868d16..a8ecc2f10e 100644 --- a/editor/io_plugins/editor_mesh_import_plugin.cpp +++ b/editor/io_plugins/editor_mesh_import_plugin.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/io_plugins/editor_mesh_import_plugin.h b/editor/io_plugins/editor_mesh_import_plugin.h index df374549d4..06fdc4195e 100644 --- a/editor/io_plugins/editor_mesh_import_plugin.h +++ b/editor/io_plugins/editor_mesh_import_plugin.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/io_plugins/editor_sample_import_plugin.cpp b/editor/io_plugins/editor_sample_import_plugin.cpp index a21d41d8c8..7836b60fde 100644 --- a/editor/io_plugins/editor_sample_import_plugin.cpp +++ b/editor/io_plugins/editor_sample_import_plugin.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/io_plugins/editor_sample_import_plugin.h b/editor/io_plugins/editor_sample_import_plugin.h index 6085043a83..134868f8c2 100644 --- a/editor/io_plugins/editor_sample_import_plugin.h +++ b/editor/io_plugins/editor_sample_import_plugin.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/io_plugins/editor_scene_import_plugin.cpp b/editor/io_plugins/editor_scene_import_plugin.cpp index 52a554f6d1..cd6acbb374 100644 --- a/editor/io_plugins/editor_scene_import_plugin.cpp +++ b/editor/io_plugins/editor_scene_import_plugin.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -1408,7 +1409,7 @@ void EditorSceneImportPlugin::_find_resources(const Variant& p_var, Map<Ref<Imag for(List<PropertyInfo>::Element *E=pl.front();E;E=E->next()) { if (E->get().type==Variant::OBJECT || E->get().type==Variant::ARRAY || E->get().type==Variant::DICTIONARY) { - if (E->get().type==Variant::OBJECT && res->cast_to<FixedSpatialMaterial>() && (E->get().name=="textures/diffuse" || E->get().name=="textures/detail" || E->get().name=="textures/emission")) { + if (E->get().type==Variant::OBJECT && res->cast_to<SpatialMaterial>() && (E->get().name=="textures/diffuse" || E->get().name=="textures/detail" || E->get().name=="textures/emission")) { Ref<ImageTexture> tex =res->get(E->get().name); if (tex.is_valid()) { @@ -1416,7 +1417,7 @@ void EditorSceneImportPlugin::_find_resources(const Variant& p_var, Map<Ref<Imag image_map.insert(tex,TEXTURE_ROLE_DIFFUSE); } - } else if (E->get().type==Variant::OBJECT && res->cast_to<FixedSpatialMaterial>() && (E->get().name=="textures/normal")) { + } else if (E->get().type==Variant::OBJECT && res->cast_to<SpatialMaterial>() && (E->get().name=="textures/normal")) { Ref<ImageTexture> tex =res->get(E->get().name); if (tex.is_valid()) { @@ -1424,7 +1425,7 @@ void EditorSceneImportPlugin::_find_resources(const Variant& p_var, Map<Ref<Imag image_map.insert(tex,TEXTURE_ROLE_NORMALMAP); /* if (p_flags&SCENE_FLAG_CONVERT_NORMALMAPS_TO_XY) - res->cast_to<FixedSpatialMaterial>()->set_fixed_flag(FixedSpatialMaterial::FLAG_USE_XY_NORMALMAP,true); + res->cast_to<SpatialMaterial>()->set_fixed_flag(SpatialMaterial::FLAG_USE_XY_NORMALMAP,true); */ } @@ -1532,12 +1533,12 @@ Node* EditorSceneImportPlugin::_fix_node(Node *p_node,Node *p_root,Map<Ref<Mesh> Ref<Mesh> m = mi->get_mesh(); for(int i=0;i<m->get_surface_count();i++) { - Ref<FixedSpatialMaterial> fm = m->surface_get_material(i); + Ref<SpatialMaterial> fm = m->surface_get_material(i); if (fm.is_valid()) { //fm->set_flag(Material::FLAG_UNSHADED,true); //fm->set_flag(Material::FLAG_DOUBLE_SIDED,true); //fm->set_depth_draw_mode(Material::DEPTH_DRAW_NEVER); - //fm->set_fixed_flag(FixedSpatialMaterial::FLAG_USE_ALPHA,true); + //fm->set_fixed_flag(SpatialMaterial::FLAG_USE_ALPHA,true); } } } @@ -1555,18 +1556,18 @@ Node* EditorSceneImportPlugin::_fix_node(Node *p_node,Node *p_root,Map<Ref<Mesh> for(int i=0;i<m->get_surface_count();i++) { - Ref<FixedSpatialMaterial> mat = m->surface_get_material(i); + Ref<SpatialMaterial> mat = m->surface_get_material(i); if (!mat.is_valid()) continue; if (p_flags&SCENE_FLAG_DETECT_ALPHA && _teststr(mat->get_name(),"alpha")) { - //mat->set_fixed_flag(FixedSpatialMaterial::FLAG_USE_ALPHA,true); + //mat->set_fixed_flag(SpatialMaterial::FLAG_USE_ALPHA,true); //mat->set_name(_fixstr(mat->get_name(),"alpha")); } if (p_flags&SCENE_FLAG_DETECT_VCOLOR && _teststr(mat->get_name(),"vcol")) { - //mat->set_fixed_flag(FixedSpatialMaterial::FLAG_USE_COLOR_ARRAY,true); + //mat->set_fixed_flag(SpatialMaterial::FLAG_USE_COLOR_ARRAY,true); //mat->set_name(_fixstr(mat->get_name(),"vcol")); } @@ -1641,12 +1642,12 @@ Node* EditorSceneImportPlugin::_fix_node(Node *p_node,Node *p_root,Map<Ref<Mesh> Ref<Mesh> m = mi->get_mesh(); for(int i=0;i<m->get_surface_count();i++) { - Ref<FixedSpatialMaterial> fm = m->surface_get_material(i); + Ref<SpatialMaterial> fm = m->surface_get_material(i); if (fm.is_valid()) { //fm->set_flag(Material::FLAG_UNSHADED,true); //fm->set_flag(Material::FLAG_DOUBLE_SIDED,true); //fm->set_depth_draw_mode(Material::DEPTH_DRAW_NEVER); - //fm->set_fixed_flag(FixedSpatialMaterial::FLAG_USE_ALPHA,true); + //fm->set_fixed_flag(SpatialMaterial::FLAG_USE_ALPHA,true); } } } @@ -1689,12 +1690,12 @@ Node* EditorSceneImportPlugin::_fix_node(Node *p_node,Node *p_root,Map<Ref<Mesh> Ref<Mesh> m = mi->get_mesh(); for(int i=0;i<m->get_surface_count();i++) { - Ref<FixedSpatialMaterial> fm = m->surface_get_material(i); + Ref<SpatialMaterial> fm = m->surface_get_material(i); if (fm.is_valid()) { fm->set_flag(Material::FLAG_UNSHADED,true); fm->set_flag(Material::FLAG_DOUBLE_SIDED,true); fm->set_hint(Material::HINT_NO_DEPTH_DRAW,true); - fm->set_fixed_flag(FixedSpatialMaterial::FLAG_USE_ALPHA,true); + fm->set_fixed_flag(SpatialMaterial::FLAG_USE_ALPHA,true); } } }*/ @@ -2062,16 +2063,16 @@ Node* EditorSceneImportPlugin::_fix_node(Node *p_node,Node *p_root,Map<Ref<Mesh> for(int i=0;i<mesh->get_surface_count();i++) { - Ref<FixedSpatialMaterial> fm = mesh->surface_get_material(i); + Ref<SpatialMaterial> fm = mesh->surface_get_material(i); if (fm.is_valid()) { String name = fm->get_name(); /* if (_teststr(name,"alpha")) { - fm->set_fixed_flag(FixedSpatialMaterial::FLAG_USE_ALPHA,true); + fm->set_fixed_flag(SpatialMaterial::FLAG_USE_ALPHA,true); name=_fixstr(name,"alpha"); } if (_teststr(name,"vcol")) { - fm->set_fixed_flag(FixedSpatialMaterial::FLAG_USE_COLOR_ARRAY,true); + fm->set_fixed_flag(SpatialMaterial::FLAG_USE_COLOR_ARRAY,true); name=_fixstr(name,"vcol"); }*/ fm->set_name(name); diff --git a/editor/io_plugins/editor_scene_import_plugin.h b/editor/io_plugins/editor_scene_import_plugin.h index e365a003a3..44526deb8b 100644 --- a/editor/io_plugins/editor_scene_import_plugin.h +++ b/editor/io_plugins/editor_scene_import_plugin.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/io_plugins/editor_scene_importer_fbxconv.cpp b/editor/io_plugins/editor_scene_importer_fbxconv.cpp index a2fe4a649b..784ad8536e 100644 --- a/editor/io_plugins/editor_scene_importer_fbxconv.cpp +++ b/editor/io_plugins/editor_scene_importer_fbxconv.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -483,29 +484,29 @@ void EditorSceneImporterFBXConv::_parse_materials(State& state) { ERR_CONTINUE(!material.has("id")); String id = _id(material["id"]); - Ref<FixedSpatialMaterial> mat = memnew( FixedSpatialMaterial ); + Ref<SpatialMaterial> mat = memnew( SpatialMaterial ); if (material.has("diffuse")) { - mat->set_parameter(FixedSpatialMaterial::PARAM_DIFFUSE,_get_color(material["diffuse"])); + mat->set_parameter(SpatialMaterial::PARAM_DIFFUSE,_get_color(material["diffuse"])); } if (material.has("specular")) { - mat->set_parameter(FixedSpatialMaterial::PARAM_SPECULAR,_get_color(material["specular"])); + mat->set_parameter(SpatialMaterial::PARAM_SPECULAR,_get_color(material["specular"])); } if (material.has("emissive")) { - mat->set_parameter(FixedSpatialMaterial::PARAM_EMISSION,_get_color(material["emissive"])); + mat->set_parameter(SpatialMaterial::PARAM_EMISSION,_get_color(material["emissive"])); } if (material.has("shininess")) { float exp = material["shininess"]; - mat->set_parameter(FixedSpatialMaterial::PARAM_SPECULAR_EXP,exp); + mat->set_parameter(SpatialMaterial::PARAM_SPECULAR_EXP,exp); } if (material.has("opacity")) { - Color c = mat->get_parameter(FixedSpatialMaterial::PARAM_DIFFUSE); + Color c = mat->get_parameter(SpatialMaterial::PARAM_DIFFUSE); c.a=material["opacity"]; - mat->set_parameter(FixedSpatialMaterial::PARAM_DIFFUSE,c); + mat->set_parameter(SpatialMaterial::PARAM_DIFFUSE,c); } @@ -537,15 +538,15 @@ void EditorSceneImporterFBXConv::_parse_materials(State& state) { String type=texture["type"]; if (type=="DIFFUSE") - mat->set_texture(FixedSpatialMaterial::PARAM_DIFFUSE,tex); + mat->set_texture(SpatialMaterial::PARAM_DIFFUSE,tex); else if (type=="SPECULAR") - mat->set_texture(FixedSpatialMaterial::PARAM_SPECULAR,tex); + mat->set_texture(SpatialMaterial::PARAM_SPECULAR,tex); else if (type=="SHININESS") - mat->set_texture(FixedSpatialMaterial::PARAM_SPECULAR_EXP,tex); + mat->set_texture(SpatialMaterial::PARAM_SPECULAR_EXP,tex); else if (type=="NORMAL") - mat->set_texture(FixedSpatialMaterial::PARAM_NORMAL,tex); + mat->set_texture(SpatialMaterial::PARAM_NORMAL,tex); else if (type=="EMISSIVE") - mat->set_texture(FixedSpatialMaterial::PARAM_EMISSION,tex); + mat->set_texture(SpatialMaterial::PARAM_EMISSION,tex); } } diff --git a/editor/io_plugins/editor_scene_importer_fbxconv.h b/editor/io_plugins/editor_scene_importer_fbxconv.h index da7058ad88..d191a17489 100644 --- a/editor/io_plugins/editor_scene_importer_fbxconv.h +++ b/editor/io_plugins/editor_scene_importer_fbxconv.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/io_plugins/editor_texture_import_plugin.cpp b/editor/io_plugins/editor_texture_import_plugin.cpp index 32742483bc..a2f0ecaf7b 100644 --- a/editor/io_plugins/editor_texture_import_plugin.cpp +++ b/editor/io_plugins/editor_texture_import_plugin.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/io_plugins/editor_texture_import_plugin.h b/editor/io_plugins/editor_texture_import_plugin.h index 5d0d21f116..ea09227713 100644 --- a/editor/io_plugins/editor_texture_import_plugin.h +++ b/editor/io_plugins/editor_texture_import_plugin.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/io_plugins/editor_translation_import_plugin.cpp b/editor/io_plugins/editor_translation_import_plugin.cpp index 9aa9f043b3..8fba33f787 100644 --- a/editor/io_plugins/editor_translation_import_plugin.cpp +++ b/editor/io_plugins/editor_translation_import_plugin.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/io_plugins/editor_translation_import_plugin.h b/editor/io_plugins/editor_translation_import_plugin.h index 030c5bbf6f..78335b531d 100644 --- a/editor/io_plugins/editor_translation_import_plugin.h +++ b/editor/io_plugins/editor_translation_import_plugin.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/multi_node_edit.cpp b/editor/multi_node_edit.cpp index e0e6838402..a0f7b1e9dd 100644 --- a/editor/multi_node_edit.cpp +++ b/editor/multi_node_edit.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/multi_node_edit.h b/editor/multi_node_edit.h index 2307968794..3ffb0e205e 100644 --- a/editor/multi_node_edit.h +++ b/editor/multi_node_edit.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/node_dock.cpp b/editor/node_dock.cpp index d76a427e1f..0f3f4b96f5 100644 --- a/editor/node_dock.cpp +++ b/editor/node_dock.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/node_dock.h b/editor/node_dock.h index b7d91899d8..0af65719c9 100644 --- a/editor/node_dock.h +++ b/editor/node_dock.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/output_strings.cpp b/editor/output_strings.cpp index 0894a92731..eb2fc62f03 100644 --- a/editor/output_strings.cpp +++ b/editor/output_strings.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/output_strings.h b/editor/output_strings.h index 392b1d4dc8..aeaad35c0c 100644 --- a/editor/output_strings.h +++ b/editor/output_strings.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/pane_drag.cpp b/editor/pane_drag.cpp index 253b217049..69a1f07fba 100644 --- a/editor/pane_drag.cpp +++ b/editor/pane_drag.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/pane_drag.h b/editor/pane_drag.h index 30ca6c20a2..bd26621c83 100644 --- a/editor/pane_drag.h +++ b/editor/pane_drag.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/animation_player_editor_plugin.cpp b/editor/plugins/animation_player_editor_plugin.cpp index 90d2847103..c79bdef71d 100644 --- a/editor/plugins/animation_player_editor_plugin.cpp +++ b/editor/plugins/animation_player_editor_plugin.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/animation_player_editor_plugin.h b/editor/plugins/animation_player_editor_plugin.h index 0eee4afcd4..a042da14df 100644 --- a/editor/plugins/animation_player_editor_plugin.h +++ b/editor/plugins/animation_player_editor_plugin.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/animation_tree_editor_plugin.cpp b/editor/plugins/animation_tree_editor_plugin.cpp index 7800fde7a8..eb669f95b5 100644 --- a/editor/plugins/animation_tree_editor_plugin.cpp +++ b/editor/plugins/animation_tree_editor_plugin.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/animation_tree_editor_plugin.h b/editor/plugins/animation_tree_editor_plugin.h index d998cb99ae..8bbe22387b 100644 --- a/editor/plugins/animation_tree_editor_plugin.h +++ b/editor/plugins/animation_tree_editor_plugin.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/baked_light_baker.cpp b/editor/plugins/baked_light_baker.cpp index de2b78b8dd..036229a7af 100644 --- a/editor/plugins/baked_light_baker.cpp +++ b/editor/plugins/baked_light_baker.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -144,18 +145,18 @@ void BakedLightBaker::_add_mesh(const Ref<Mesh>& p_mesh,const Ref<Material>& p_m MeshMaterial mm; - Ref<FixedSpatialMaterial> fm = mat; + Ref<SpatialMaterial> fm = mat; if (fm.is_valid()) { //fixed route - mm.diffuse.color=fm->get_parameter(FixedSpatialMaterial::PARAM_DIFFUSE); + mm.diffuse.color=fm->get_parameter(SpatialMaterial::PARAM_DIFFUSE); if (linear_color) mm.diffuse.color=mm.diffuse.color.to_linear(); - mm.diffuse.tex=_get_mat_tex(fm->get_texture(FixedSpatialMaterial::PARAM_DIFFUSE)); - mm.specular.color=fm->get_parameter(FixedSpatialMaterial::PARAM_SPECULAR); + mm.diffuse.tex=_get_mat_tex(fm->get_texture(SpatialMaterial::PARAM_DIFFUSE)); + mm.specular.color=fm->get_parameter(SpatialMaterial::PARAM_SPECULAR); if (linear_color) mm.specular.color=mm.specular.color.to_linear(); - mm.specular.tex=_get_mat_tex(fm->get_texture(FixedSpatialMaterial::PARAM_SPECULAR)); + mm.specular.tex=_get_mat_tex(fm->get_texture(SpatialMaterial::PARAM_SPECULAR)); } else { mm.diffuse.color=Color(1,1,1,1); diff --git a/editor/plugins/baked_light_baker.h b/editor/plugins/baked_light_baker.h index f328062b1e..5f32e236c0 100644 --- a/editor/plugins/baked_light_baker.h +++ b/editor/plugins/baked_light_baker.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/baked_light_baker_cmpxchg.cpp b/editor/plugins/baked_light_baker_cmpxchg.cpp index f84c001f78..f0a1aea416 100644 --- a/editor/plugins/baked_light_baker_cmpxchg.cpp +++ b/editor/plugins/baked_light_baker_cmpxchg.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/baked_light_editor_plugin.cpp b/editor/plugins/baked_light_editor_plugin.cpp index 5ac4b54600..f973639a67 100644 --- a/editor/plugins/baked_light_editor_plugin.cpp +++ b/editor/plugins/baked_light_editor_plugin.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/baked_light_editor_plugin.h b/editor/plugins/baked_light_editor_plugin.h index 036407a574..c4a7cd51cf 100644 --- a/editor/plugins/baked_light_editor_plugin.h +++ b/editor/plugins/baked_light_editor_plugin.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/camera_editor_plugin.cpp b/editor/plugins/camera_editor_plugin.cpp index 96b6da51fd..b8f8464bae 100644 --- a/editor/plugins/camera_editor_plugin.cpp +++ b/editor/plugins/camera_editor_plugin.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/camera_editor_plugin.h b/editor/plugins/camera_editor_plugin.h index f23b0d5cc8..f4b26fcdac 100644 --- a/editor/plugins/camera_editor_plugin.h +++ b/editor/plugins/camera_editor_plugin.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/canvas_item_editor_plugin.cpp b/editor/plugins/canvas_item_editor_plugin.cpp index b07112855c..0c32671acc 100644 --- a/editor/plugins/canvas_item_editor_plugin.cpp +++ b/editor/plugins/canvas_item_editor_plugin.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/canvas_item_editor_plugin.h b/editor/plugins/canvas_item_editor_plugin.h index ba3f240a49..7f09b92f4c 100644 --- a/editor/plugins/canvas_item_editor_plugin.h +++ b/editor/plugins/canvas_item_editor_plugin.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/collision_polygon_2d_editor_plugin.cpp b/editor/plugins/collision_polygon_2d_editor_plugin.cpp index 0f7e3a3990..ae426ba29e 100644 --- a/editor/plugins/collision_polygon_2d_editor_plugin.cpp +++ b/editor/plugins/collision_polygon_2d_editor_plugin.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/collision_polygon_2d_editor_plugin.h b/editor/plugins/collision_polygon_2d_editor_plugin.h index abd723cce9..babe653581 100644 --- a/editor/plugins/collision_polygon_2d_editor_plugin.h +++ b/editor/plugins/collision_polygon_2d_editor_plugin.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/collision_polygon_editor_plugin.cpp b/editor/plugins/collision_polygon_editor_plugin.cpp index 62426a7699..fdb1bf984e 100644 --- a/editor/plugins/collision_polygon_editor_plugin.cpp +++ b/editor/plugins/collision_polygon_editor_plugin.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -571,25 +572,25 @@ CollisionPolygonEditor::CollisionPolygonEditor(EditorNode *p_editor) { imgeom->set_transform(Transform(Matrix3(),Vector3(0,0,0.00001))); - line_material = Ref<FixedSpatialMaterial>( memnew( FixedSpatialMaterial )); + line_material = Ref<SpatialMaterial>( memnew( SpatialMaterial )); line_material->set_flag(Material::FLAG_UNSHADED, true); line_material->set_line_width(3.0); - line_material->set_fixed_flag(FixedSpatialMaterial::FLAG_USE_ALPHA, true); - line_material->set_fixed_flag(FixedSpatialMaterial::FLAG_USE_COLOR_ARRAY, true); - line_material->set_parameter(FixedSpatialMaterial::PARAM_DIFFUSE,Color(1,1,1)); + line_material->set_fixed_flag(SpatialMaterial::FLAG_USE_ALPHA, true); + line_material->set_fixed_flag(SpatialMaterial::FLAG_USE_COLOR_ARRAY, true); + line_material->set_parameter(SpatialMaterial::PARAM_DIFFUSE,Color(1,1,1)); - handle_material = Ref<FixedSpatialMaterial>( memnew( FixedSpatialMaterial )); + handle_material = Ref<SpatialMaterial>( memnew( SpatialMaterial )); handle_material->set_flag(Material::FLAG_UNSHADED, true); - handle_material->set_fixed_flag(FixedSpatialMaterial::FLAG_USE_POINT_SIZE, true); - handle_material->set_parameter(FixedSpatialMaterial::PARAM_DIFFUSE,Color(1,1,1)); - handle_material->set_fixed_flag(FixedSpatialMaterial::FLAG_USE_ALPHA, true); - handle_material->set_fixed_flag(FixedSpatialMaterial::FLAG_USE_COLOR_ARRAY, false); + handle_material->set_fixed_flag(SpatialMaterial::FLAG_USE_POINT_SIZE, true); + handle_material->set_parameter(SpatialMaterial::PARAM_DIFFUSE,Color(1,1,1)); + handle_material->set_fixed_flag(SpatialMaterial::FLAG_USE_ALPHA, true); + handle_material->set_fixed_flag(SpatialMaterial::FLAG_USE_COLOR_ARRAY, false); Ref<Texture> handle=editor->get_gui_base()->get_icon("Editor3DHandle","EditorIcons"); handle_material->set_point_size(handle->get_width()); - handle_material->set_texture(FixedSpatialMaterial::PARAM_DIFFUSE,handle); + handle_material->set_texture(SpatialMaterial::PARAM_DIFFUSE,handle); pointsm = memnew( MeshInstance ); imgeom->add_child(pointsm); diff --git a/editor/plugins/collision_polygon_editor_plugin.h b/editor/plugins/collision_polygon_editor_plugin.h index ace8c3429f..995f2224bf 100644 --- a/editor/plugins/collision_polygon_editor_plugin.h +++ b/editor/plugins/collision_polygon_editor_plugin.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -62,8 +63,8 @@ class CollisionPolygonEditor : public HBoxContainer { ToolButton *button_edit; - Ref<FixedSpatialMaterial> line_material; - Ref<FixedSpatialMaterial> handle_material; + Ref<SpatialMaterial> line_material; + Ref<SpatialMaterial> handle_material; EditorNode *editor; Panel *panel; diff --git a/editor/plugins/collision_shape_2d_editor_plugin.cpp b/editor/plugins/collision_shape_2d_editor_plugin.cpp index 3538878877..70cc81efb0 100644 --- a/editor/plugins/collision_shape_2d_editor_plugin.cpp +++ b/editor/plugins/collision_shape_2d_editor_plugin.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/collision_shape_2d_editor_plugin.h b/editor/plugins/collision_shape_2d_editor_plugin.h index 75331a1d61..bbd94516a8 100644 --- a/editor/plugins/collision_shape_2d_editor_plugin.h +++ b/editor/plugins/collision_shape_2d_editor_plugin.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/color_ramp_editor_plugin.cpp b/editor/plugins/color_ramp_editor_plugin.cpp index 1d1d654bd5..63369e5475 100644 --- a/editor/plugins/color_ramp_editor_plugin.cpp +++ b/editor/plugins/color_ramp_editor_plugin.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/color_ramp_editor_plugin.h b/editor/plugins/color_ramp_editor_plugin.h index 45ac53c669..73b15b85a1 100644 --- a/editor/plugins/color_ramp_editor_plugin.h +++ b/editor/plugins/color_ramp_editor_plugin.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/cube_grid_theme_editor_plugin.cpp b/editor/plugins/cube_grid_theme_editor_plugin.cpp index e73a9b31af..4633d5fe33 100644 --- a/editor/plugins/cube_grid_theme_editor_plugin.cpp +++ b/editor/plugins/cube_grid_theme_editor_plugin.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/cube_grid_theme_editor_plugin.h b/editor/plugins/cube_grid_theme_editor_plugin.h index af3929e616..ed5875a999 100644 --- a/editor/plugins/cube_grid_theme_editor_plugin.h +++ b/editor/plugins/cube_grid_theme_editor_plugin.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/curve_editor_plugin.cpp b/editor/plugins/curve_editor_plugin.cpp new file mode 100644 index 0000000000..52edc75bc0 --- /dev/null +++ b/editor/plugins/curve_editor_plugin.cpp @@ -0,0 +1,519 @@ +#include "curve_editor_plugin.h" + +#include "canvas_item_editor_plugin.h" +#include "os/keyboard.h" +#include "spatial_editor_plugin.h" +void CurveTextureEdit::_gui_input(const InputEvent &p_event) { + + if (p_event.type == InputEvent::KEY && p_event.key.pressed && p_event.key.scancode == KEY_DELETE && grabbed != -1) { + + points.remove(grabbed); + grabbed = -1; + update(); + emit_signal("curve_changed"); + accept_event(); + } + + if (p_event.type == InputEvent::MOUSE_BUTTON && p_event.mouse_button.button_index == 1 && p_event.mouse_button.pressed) { + + update(); + Ref<Font> font = get_font("font", "Label"); + + int font_h = font->get_height(); + + Vector2 size = get_size(); + size.y -= font_h; + + Point2 p = Vector2(p_event.mouse_button.x, p_event.mouse_button.y) / size; + p.y = CLAMP(1.0 - p.y, 0, 1) * (max - min) + min; + grabbed = -1; + grabbing = true; + + for (int i = 0; i < points.size(); i++) { + + Vector2 ps = p * get_size(); + Vector2 pt = Vector2(points[i].offset, points[i].height) * get_size(); + if (ps.distance_to(pt) < 4) { + grabbed = i; + } + } + + //grab or select + if (grabbed != -1) { + return; + } + //insert + + Point np; + np.offset = p.x; + np.height = p.y; + + points.push_back(np); + points.sort(); + for (int i = 0; i < points.size(); i++) { + if (points[i].offset == p.x && points[i].height == p.y) { + grabbed = i; + break; + } + } + + emit_signal("curve_changed"); + } + + if (p_event.type == InputEvent::MOUSE_BUTTON && p_event.mouse_button.button_index == 1 && !p_event.mouse_button.pressed) { + + if (grabbing) { + grabbing = false; + emit_signal("curve_changed"); + } + update(); + } + + if (p_event.type == InputEvent::MOUSE_MOTION && grabbing && grabbed != -1) { + + Ref<Font> font = get_font("font", "Label"); + int font_h = font->get_height(); + Vector2 size = get_size(); + size.y -= font_h; + + Point2 p = Vector2(p_event.mouse_motion.x, p_event.mouse_motion.y) / size; + p.y = CLAMP(1.0 - p.y, 0, 1) * (max - min) + min; + p.x = CLAMP(p.x, 0.0, 1.0); + + bool valid = true; + + for (int i = 0; i < points.size(); i++) { + + if (points[i].offset == p.x && points[i].height == p.y && i != grabbed) { + valid = false; + } + } + + if (!valid) + return; + + points[grabbed].offset = p.x; + points[grabbed].height = p.y; + + points.sort(); + for (int i = 0; i < points.size(); i++) { + if (points[i].offset == p.x && points[i].height == p.y) { + grabbed = i; + break; + } + } + + emit_signal("curve_changed"); + + update(); + } +} + +void CurveTextureEdit::_plot_curve(const Vector2 &p_a, const Vector2 &p_b, const Vector2 &p_c, const Vector2 &p_d) { + + Ref<Font> font = get_font("font", "Label"); + + int font_h = font->get_height(); + + float geometry[4][4]; + float tmp1[4][4]; + float tmp2[4][4]; + float deltas[4][4]; + double x, dx, dx2, dx3; + double y, dy, dy2, dy3; + double d, d2, d3; + int lastx, lasty; + int newx, newy; + int ntimes; + int i, j; + + int xmax = get_size().x; + int ymax = get_size().y - font_h; + + int vsplits = 4; + + int zero_ofs = (1.0 - (0.0 - min) / (max - min)) * ymax; + + draw_line(Vector2(0, zero_ofs), Vector2(xmax, zero_ofs), Color(0.8, 0.8, 0.8, 0.15), 2.0); + + for (int i = 0; i <= vsplits; i++) { + float fofs = float(i) / vsplits; + int yofs = fofs * ymax; + draw_line(Vector2(xmax, yofs), Vector2(xmax - 4, yofs), Color(0.8, 0.8, 0.8, 0.8), 2.0); + + String text = rtos((1.0 - fofs) * (max - min) + min); + int ppos = text.find("."); + if (ppos != -1) { + if (text.length() > ppos + 2) + text = text.substr(0, ppos + 2); + } + + int size = font->get_string_size(text).x; + int xofs = xmax - size - 4; + yofs -= font_h / 2; + + if (yofs < 2) { + yofs = 2; + } else if (yofs + font_h > ymax - 2) { + yofs = ymax - font_h - 2; + } + + draw_string(font, Vector2(xofs, yofs + font->get_ascent()), text, Color(0.8, 0.8, 0.8, 1)); + } + + /* construct the geometry matrix from the segment */ + for (i = 0; i < 4; i++) { + geometry[i][2] = 0; + geometry[i][3] = 0; + } + + geometry[0][0] = (p_a[0] * xmax); + geometry[1][0] = (p_b[0] * xmax); + geometry[2][0] = (p_c[0] * xmax); + geometry[3][0] = (p_d[0] * xmax); + + geometry[0][1] = ((p_a[1] - min) / (max - min) * ymax); + geometry[1][1] = ((p_b[1] - min) / (max - min) * ymax); + geometry[2][1] = ((p_c[1] - min) / (max - min) * ymax); + geometry[3][1] = ((p_d[1] - min) / (max - min) * ymax); + + /* subdivide the curve ntimes (1000) times */ + ntimes = 4 * xmax; + /* ntimes can be adjusted to give a finer or coarser curve */ + d = 1.0 / ntimes; + d2 = d * d; + d3 = d * d * d; + + /* construct a temporary matrix for determining the forward differencing deltas */ + tmp2[0][0] = 0; + tmp2[0][1] = 0; + tmp2[0][2] = 0; + tmp2[0][3] = 1; + tmp2[1][0] = d3; + tmp2[1][1] = d2; + tmp2[1][2] = d; + tmp2[1][3] = 0; + tmp2[2][0] = 6 * d3; + tmp2[2][1] = 2 * d2; + tmp2[2][2] = 0; + tmp2[2][3] = 0; + tmp2[3][0] = 6 * d3; + tmp2[3][1] = 0; + tmp2[3][2] = 0; + tmp2[3][3] = 0; + + /* compose the basis and geometry matrices */ + + static const float CR_basis[4][4] = { + { -0.5, 1.5, -1.5, 0.5 }, + { 1.0, -2.5, 2.0, -0.5 }, + { -0.5, 0.0, 0.5, 0.0 }, + { 0.0, 1.0, 0.0, 0.0 }, + }; + + for (i = 0; i < 4; i++) { + for (j = 0; j < 4; j++) { + tmp1[i][j] = (CR_basis[i][0] * geometry[0][j] + + CR_basis[i][1] * geometry[1][j] + + CR_basis[i][2] * geometry[2][j] + + CR_basis[i][3] * geometry[3][j]); + } + } + /* compose the above results to get the deltas matrix */ + + for (i = 0; i < 4; i++) { + for (j = 0; j < 4; j++) { + deltas[i][j] = (tmp2[i][0] * tmp1[0][j] + + tmp2[i][1] * tmp1[1][j] + + tmp2[i][2] * tmp1[2][j] + + tmp2[i][3] * tmp1[3][j]); + } + } + + /* extract the x deltas */ + x = deltas[0][0]; + dx = deltas[1][0]; + dx2 = deltas[2][0]; + dx3 = deltas[3][0]; + + /* extract the y deltas */ + y = deltas[0][1]; + dy = deltas[1][1]; + dy2 = deltas[2][1]; + dy3 = deltas[3][1]; + + lastx = CLAMP(x, 0, xmax); + lasty = CLAMP(y, 0, ymax); + + /* if (fix255) + { + cd->curve[cd->outline][lastx] = lasty; + } + else + { + cd->curve_ptr[cd->outline][lastx] = lasty; + if(gb_debug) printf("bender_plot_curve xmax:%d ymax:%d\n", (int)xmax, (int)ymax); + } +*/ + /* loop over the curve */ + for (i = 0; i < ntimes; i++) { + /* increment the x values */ + x += dx; + dx += dx2; + dx2 += dx3; + + /* increment the y values */ + y += dy; + dy += dy2; + dy2 += dy3; + + newx = CLAMP((Math::round(x)), 0, xmax); + newy = CLAMP((Math::round(y)), 0, ymax); + + /* if this point is different than the last one...then draw it */ + if ((lastx != newx) || (lasty != newy)) { +#if 0 + if(fix255) + { + /* use fixed array size (for the curve graph) */ + cd->curve[cd->outline][newx] = newy; + } + else + { + /* use dynamic allocated curve_ptr (for the real curve) */ + cd->curve_ptr[cd->outline][newx] = newy; + + if(gb_debug) printf("outline: %d cX: %d cY: %d\n", (int)cd->outline, (int)newx, (int)newy); + } +#endif + draw_line(Vector2(lastx, ymax - lasty), Vector2(newx, ymax - newy), Color(0.8, 0.8, 0.8, 0.8), 2.0); + } + + lastx = newx; + lasty = newy; + } + + int splits = 8; + + draw_line(Vector2(0, ymax - 1), Vector2(xmax, ymax - 1), Color(0.8, 0.8, 0.8, 0.3), 2.0); + + for (int i = 0; i <= splits; i++) { + float fofs = float(i) / splits; + draw_line(Vector2(fofs * xmax, ymax), Vector2(fofs * xmax, ymax - 2), Color(0.8, 0.8, 0.8, 0.8), 2.0); + + String text = rtos(fofs); + int size = font->get_string_size(text).x; + int ofs = fofs * xmax - size * 0.5; + if (ofs < 2) { + ofs = 2; + } else if (ofs + size > xmax - 2) { + ofs = xmax - size - 2; + } + + draw_string(font, Vector2(ofs, ymax + font->get_ascent()), text, Color(0.8, 0.8, 0.8, 1)); + } +} + +void CurveTextureEdit::_notification(int p_what) { + + if (p_what == NOTIFICATION_DRAW) { + + Ref<Font> font = get_font("font", "Label"); + + int font_h = font->get_height(); + + draw_style_box(get_stylebox("bg", "Tree"), Rect2(Point2(), get_size())); + + int w = get_size().x; + int h = get_size().y; + + Vector2 prev = Vector2(0, 0); + Vector2 prev2 = Vector2(0, 0); + + for (int i = -1; i < points.size(); i++) { + + Vector2 next; + Vector2 next2; + if (i + 1 >= points.size()) { + next = Vector2(1, 0); + } else { + next = Vector2(points[i + 1].offset, points[i + 1].height); + } + + if (i + 2 >= points.size()) { + next2 = Vector2(1, 0); + } else { + next2 = Vector2(points[i + 2].offset, points[i + 2].height); + } + + /*if (i==-1 && prev.offset==next.offset) { + prev=next; + continue; + }*/ + + _plot_curve(prev2, prev, next, next2); + + prev2 = prev; + prev = next; + } + + Vector2 size = get_size(); + size.y -= font_h; + for (int i = 0; i < points.size(); i++) { + + Color col = i == grabbed ? Color(1, 0.0, 0.0, 0.9) : Color(1, 1, 1, 0.8); + + float h = (points[i].height - min) / (max - min); + draw_rect(Rect2(Vector2(points[i].offset, 1.0 - h) * size - Vector2(2, 2), Vector2(5, 5)), col); + } + + /* if (grabbed!=-1) { + + draw_rect(Rect2(total_w+3,0,h,h),points[grabbed].color); + } +*/ + if (has_focus()) { + + draw_line(Vector2(-1, -1), Vector2(w + 1, -1), Color(1, 1, 1, 0.6)); + draw_line(Vector2(w + 1, -1), Vector2(w + 1, h + 1), Color(1, 1, 1, 0.6)); + draw_line(Vector2(w + 1, h + 1), Vector2(-1, h + 1), Color(1, 1, 1, 0.6)); + draw_line(Vector2(-1, -1), Vector2(-1, h + 1), Color(1, 1, 1, 0.6)); + } + } +} + +Size2 CurveTextureEdit::get_minimum_size() const { + + return Vector2(64, 64); +} + +void CurveTextureEdit::set_range(float p_min, float p_max) { + max = p_max; + min = p_min; + update(); +} + +void CurveTextureEdit::set_points(const Vector<Vector2> &p_points) { + + points.clear(); + for (int i = 0; i < p_points.size(); i++) { + Point p; + p.offset = p_points[i].x; + p.height = p_points[i].y; + points.push_back(p); + } + + points.sort(); + update(); +} + +Vector<Vector2> CurveTextureEdit::get_points() const { + Vector<Vector2> ret; + for (int i = 0; i < points.size(); i++) + ret.push_back(Vector2(points[i].offset, points[i].height)); + return ret; +} + +void CurveTextureEdit::_bind_methods() { + + ClassDB::bind_method(D_METHOD("_gui_input"), &CurveTextureEdit::_gui_input); + + ADD_SIGNAL(MethodInfo("curve_changed")); +} + +CurveTextureEdit::CurveTextureEdit() { + + grabbed = -1; + grabbing = false; + max = 1; + min = 0; + set_focus_mode(FOCUS_ALL); +} + +void CurveTextureEditorPlugin::_curve_settings_changed() { + + if (!curve_texture_ref.is_valid()) + return; + curve_editor->set_points(Variant(curve_texture_ref->get_points())); + curve_editor->set_range(curve_texture_ref->get_min(), curve_texture_ref->get_max()); +} + +CurveTextureEditorPlugin::CurveTextureEditorPlugin(EditorNode *p_node) { + + editor = p_node; + curve_editor = memnew(CurveTextureEdit); + + curve_button = editor->add_bottom_panel_item("CurveTexture", curve_editor); + + curve_button->hide(); + curve_editor->set_custom_minimum_size(Size2(100, 128 * EDSCALE)); + curve_editor->hide(); + curve_editor->connect("curve_changed", this, "curve_changed"); +} + +void CurveTextureEditorPlugin::edit(Object *p_object) { + + if (curve_texture_ref.is_valid()) { + curve_texture_ref->disconnect("changed", this, "_curve_settings_changed"); + } + CurveTexture *curve_texture = p_object->cast_to<CurveTexture>(); + if (!curve_texture) + return; + curve_texture_ref = Ref<CurveTexture>(curve_texture); + curve_editor->set_points(Variant(curve_texture_ref->get_points())); + curve_editor->set_range(curve_texture_ref->get_min(), curve_texture_ref->get_max()); + if (!curve_texture_ref->is_connected("changed", this, "_curve_settings_changed")) { + curve_texture_ref->connect("changed", this, "_curve_settings_changed"); + } +} + +bool CurveTextureEditorPlugin::handles(Object *p_object) const { + + return p_object->is_class("CurveTexture"); +} + +void CurveTextureEditorPlugin::make_visible(bool p_visible) { + + if (p_visible) { + curve_button->show(); + editor->make_bottom_panel_item_visible(curve_editor); + + } else { + + curve_button->hide(); + if (curve_editor->is_visible_in_tree()) + editor->hide_bottom_panel(); + } +} + +void CurveTextureEditorPlugin::_curve_changed() { + + if (curve_texture_ref.is_valid()) { + + UndoRedo *ur = EditorNode::get_singleton()->get_undo_redo(); + + Vector<Vector2> points = curve_editor->get_points(); + PoolVector<Vector2> ppoints = Variant(points); + + ur->create_action(TTR("Modify Curve"), UndoRedo::MERGE_ENDS); + ur->add_do_method(this, "undo_redo_curve_texture", ppoints); + ur->add_undo_method(this, "undo_redo_curve_texture", curve_texture_ref->get_points()); + ur->commit_action(); + } +} + +void CurveTextureEditorPlugin::_undo_redo_curve_texture(const PoolVector<Vector2> &points) { + + curve_texture_ref->set_points(points); + curve_editor->set_points(Variant(curve_texture_ref->get_points())); + curve_editor->update(); +} + +CurveTextureEditorPlugin::~CurveTextureEditorPlugin() { +} + +void CurveTextureEditorPlugin::_bind_methods() { + ClassDB::bind_method(D_METHOD("curve_changed"), &CurveTextureEditorPlugin::_curve_changed); + ClassDB::bind_method(D_METHOD("_curve_settings_changed"), &CurveTextureEditorPlugin::_curve_settings_changed); + ClassDB::bind_method(D_METHOD("undo_redo_curve_texture", "points"), &CurveTextureEditorPlugin::_undo_redo_curve_texture); +} diff --git a/editor/plugins/curve_editor_plugin.h b/editor/plugins/curve_editor_plugin.h new file mode 100644 index 0000000000..e98cec2727 --- /dev/null +++ b/editor/plugins/curve_editor_plugin.h @@ -0,0 +1,66 @@ +#ifndef CURVE_EDITOR_PLUGIN_H +#define CURVE_EDITOR_PLUGIN_H + +#include "editor/editor_node.h" +#include "editor/editor_plugin.h" + +class CurveTextureEdit : public Control { + + GDCLASS(CurveTextureEdit, Control); + + struct Point { + + float offset; + float height; + bool operator<(const Point &p_ponit) const { + return offset < p_ponit.offset; + } + }; + + bool grabbing; + int grabbed; + Vector<Point> points; + float max, min; + + void _plot_curve(const Vector2 &p_a, const Vector2 &p_b, const Vector2 &p_c, const Vector2 &p_d); + +protected: + void _gui_input(const InputEvent &p_event); + void _notification(int p_what); + static void _bind_methods(); + +public: + void set_range(float p_min, float p_max); + void set_points(const Vector<Vector2> &p_points); + Vector<Vector2> get_points() const; + virtual Size2 get_minimum_size() const; + CurveTextureEdit(); +}; + +class CurveTextureEditorPlugin : public EditorPlugin { + + GDCLASS(CurveTextureEditorPlugin, EditorPlugin); + + CurveTextureEdit *curve_editor; + Ref<CurveTexture> curve_texture_ref; + EditorNode *editor; + ToolButton *curve_button; + +protected: + static void _bind_methods(); + void _curve_changed(); + void _undo_redo_curve_texture(const PoolVector<Vector2> &points); + void _curve_settings_changed(); + +public: + virtual String get_name() const { return "CurveTexture"; } + bool has_main_screen() const { return false; } + virtual void edit(Object *p_node); + virtual bool handles(Object *p_node) const; + virtual void make_visible(bool p_visible); + + CurveTextureEditorPlugin(EditorNode *p_node); + ~CurveTextureEditorPlugin(); +}; + +#endif // CURVE_EDITOR_PLUGIN_H diff --git a/editor/plugins/editor_preview_plugins.cpp b/editor/plugins/editor_preview_plugins.cpp index eaadf3976b..db8060d591 100644 --- a/editor/plugins/editor_preview_plugins.cpp +++ b/editor/plugins/editor_preview_plugins.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/editor_preview_plugins.h b/editor/plugins/editor_preview_plugins.h index b1d4fa0b38..993e36df02 100644 --- a/editor/plugins/editor_preview_plugins.h +++ b/editor/plugins/editor_preview_plugins.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/gi_probe_editor_plugin.cpp b/editor/plugins/gi_probe_editor_plugin.cpp index 0930c91e94..a8f840a8b1 100644 --- a/editor/plugins/gi_probe_editor_plugin.cpp +++ b/editor/plugins/gi_probe_editor_plugin.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/gi_probe_editor_plugin.h b/editor/plugins/gi_probe_editor_plugin.h index 14d831a01a..b8f63e0b2e 100644 --- a/editor/plugins/gi_probe_editor_plugin.h +++ b/editor/plugins/gi_probe_editor_plugin.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/gradient_texture_editor_plugin.cpp b/editor/plugins/gradient_texture_editor_plugin.cpp new file mode 100644 index 0000000000..1e82a1105a --- /dev/null +++ b/editor/plugins/gradient_texture_editor_plugin.cpp @@ -0,0 +1,504 @@ +#include "gradient_texture_editor_plugin.h" + +#include "canvas_item_editor_plugin.h" +#include "spatial_editor_plugin.h" + +#include "os/keyboard.h" +#include "scene/resources/default_theme/theme_data.h" +#define POINT_WIDTH 8 + +GradientTextureEdit::GradientTextureEdit() { + grabbed = -1; + grabbing = false; + set_focus_mode(FOCUS_ALL); + + popup = memnew(PopupPanel); + picker = memnew(ColorPicker); + popup->add_child(picker); + + add_child(popup); + + checker = Ref<ImageTexture>(memnew(ImageTexture)); + checker->create_from_image(Image(checker_bg_png), ImageTexture::FLAG_REPEAT); +} + +int GradientTextureEdit::_get_point_from_pos(int x) { + int result = -1; + int total_w = get_size().width - get_size().height - 3; + for (int i = 0; i < points.size(); i++) { + //Check if we clicked at point + if (ABS(x - points[i].offset * total_w + 1) < (POINT_WIDTH / 2 + 1)) { + result = i; + } + } + return result; +} + +void GradientTextureEdit::_show_color_picker() { + if (grabbed == -1) + return; + Size2 ms = Size2(350, picker->get_combined_minimum_size().height + 10); + picker->set_pick_color(points[grabbed].color); + popup->set_pos(get_global_pos() - Vector2(ms.width - get_size().width, ms.height)); + popup->set_size(ms); + popup->popup(); +} + +GradientTextureEdit::~GradientTextureEdit() { +} + +void GradientTextureEdit::_gui_input(const InputEvent &p_event) { + + if (p_event.type == InputEvent::KEY && p_event.key.pressed && p_event.key.scancode == KEY_DELETE && grabbed != -1) { + + points.remove(grabbed); + grabbed = -1; + grabbing = false; + update(); + emit_signal("ramp_changed"); + accept_event(); + } + + //Show color picker on double click. + if (p_event.type == InputEvent::MOUSE_BUTTON && p_event.mouse_button.button_index == 1 && p_event.mouse_button.doubleclick && p_event.mouse_button.pressed) { + grabbed = _get_point_from_pos(p_event.mouse_button.x); + _show_color_picker(); + accept_event(); + } + + //Delete point on right click + if (p_event.type == InputEvent::MOUSE_BUTTON && p_event.mouse_button.button_index == 2 && p_event.mouse_button.pressed) { + grabbed = _get_point_from_pos(p_event.mouse_button.x); + if (grabbed != -1) { + points.remove(grabbed); + grabbed = -1; + grabbing = false; + update(); + emit_signal("ramp_changed"); + accept_event(); + } + } + + //Hold alt key to duplicate selected color + if (p_event.type == InputEvent::MOUSE_BUTTON && p_event.mouse_button.button_index == 1 && p_event.mouse_button.pressed && p_event.key.mod.alt) { + + int x = p_event.mouse_button.x; + grabbed = _get_point_from_pos(x); + + if (grabbed != -1) { + int total_w = get_size().width - get_size().height - 3; + GradientTexture::Point newPoint = points[grabbed]; + newPoint.offset = CLAMP(x / float(total_w), 0, 1); + + points.push_back(newPoint); + points.sort(); + for (int i = 0; i < points.size(); ++i) { + if (points[i].offset == newPoint.offset) { + grabbed = i; + break; + } + } + + emit_signal("ramp_changed"); + update(); + } + } + + if (p_event.type == InputEvent::MOUSE_BUTTON && p_event.mouse_button.button_index == 1 && p_event.mouse_button.pressed) { + + update(); + int x = p_event.mouse_button.x; + int total_w = get_size().width - get_size().height - 3; + + //Check if color selector was clicked. + if (x > total_w + 3) { + _show_color_picker(); + return; + } + + grabbing = true; + + grabbed = _get_point_from_pos(x); + //grab or select + if (grabbed != -1) { + return; + } + + //insert + GradientTexture::Point newPoint; + newPoint.offset = CLAMP(x / float(total_w), 0, 1); + + GradientTexture::Point prev; + GradientTexture::Point next; + + int pos = -1; + for (int i = 0; i < points.size(); i++) { + if (points[i].offset < newPoint.offset) + pos = i; + } + + if (pos == -1) { + + prev.color = Color(0, 0, 0); + prev.offset = 0; + if (points.size()) { + next = points[0]; + } else { + next.color = Color(1, 1, 1); + next.offset = 1.0; + } + } else { + + if (pos == points.size() - 1) { + next.color = Color(1, 1, 1); + next.offset = 1.0; + } else { + next = points[pos + 1]; + } + prev = points[pos]; + } + + newPoint.color = prev.color.linear_interpolate(next.color, (newPoint.offset - prev.offset) / (next.offset - prev.offset)); + + points.push_back(newPoint); + points.sort(); + for (int i = 0; i < points.size(); i++) { + if (points[i].offset == newPoint.offset) { + grabbed = i; + break; + } + } + + emit_signal("ramp_changed"); + } + + if (p_event.type == InputEvent::MOUSE_BUTTON && p_event.mouse_button.button_index == 1 && !p_event.mouse_button.pressed) { + + if (grabbing) { + grabbing = false; + emit_signal("ramp_changed"); + } + update(); + } + + if (p_event.type == InputEvent::MOUSE_MOTION && grabbing) { + + int total_w = get_size().width - get_size().height - 3; + + int x = p_event.mouse_motion.x; + float newofs = CLAMP(x / float(total_w), 0, 1); + + //Snap to nearest point if holding shift + if (p_event.key.mod.shift) { + float snap_treshhold = 0.03; + float smallest_ofs = snap_treshhold; + bool founded = false; + int nearest_point; + for (int i = 0; i < points.size(); ++i) { + if (i != grabbed) { + float temp_ofs = ABS(points[i].offset - newofs); + if (temp_ofs < smallest_ofs) { + smallest_ofs = temp_ofs; + nearest_point = i; + if (founded) + break; + founded = true; + } + } + } + if (founded) { + if (points[nearest_point].offset < newofs) + newofs = points[nearest_point].offset + 0.00001; + else + newofs = points[nearest_point].offset - 0.00001; + newofs = CLAMP(newofs, 0, 1); + } + } + + bool valid = true; + for (int i = 0; i < points.size(); i++) { + + if (points[i].offset == newofs && i != grabbed) { + valid = false; + } + } + + if (!valid) + return; + + points[grabbed].offset = newofs; + + points.sort(); + for (int i = 0; i < points.size(); i++) { + if (points[i].offset == newofs) { + grabbed = i; + break; + } + } + + emit_signal("ramp_changed"); + + update(); + } +} + +void GradientTextureEdit::_notification(int p_what) { + + if (p_what == NOTIFICATION_ENTER_TREE) { + if (!picker->is_connected("color_changed", this, "_color_changed")) { + picker->connect("color_changed", this, "_color_changed"); + } + } + if (p_what == NOTIFICATION_DRAW) { + + int w = get_size().x; + int h = get_size().y; + + if (w == 0 || h == 0) + return; //Safety check. We have division by 'h'. And in any case there is nothing to draw with such size + + int total_w = get_size().width - get_size().height - 3; + + //Draw checker pattern for ramp + _draw_checker(0, 0, total_w, h); + + //Draw color ramp + GradientTexture::Point prev; + prev.offset = 0; + if (points.size() == 0) + prev.color = Color(0, 0, 0); //Draw black rectangle if we have no points + else + prev.color = points[0].color; //Extend color of first point to the beginning. + + for (int i = -1; i < points.size(); i++) { + + GradientTexture::Point next; + //If there is no next point + if (i + 1 == points.size()) { + if (points.size() == 0) + next.color = Color(0, 0, 0); //Draw black rectangle if we have no points + else + next.color = points[i].color; //Extend color of last point to the end. + next.offset = 1; + } else { + next = points[i + 1]; + } + + if (prev.offset == next.offset) { + prev = next; + continue; + } + + Vector<Vector2> points; + Vector<Color> colors; + points.push_back(Vector2(prev.offset * total_w, h)); + points.push_back(Vector2(prev.offset * total_w, 0)); + points.push_back(Vector2(next.offset * total_w, 0)); + points.push_back(Vector2(next.offset * total_w, h)); + colors.push_back(prev.color); + colors.push_back(prev.color); + colors.push_back(next.color); + colors.push_back(next.color); + draw_primitive(points, colors, Vector<Point2>()); + prev = next; + } + + //Draw point markers + for (int i = 0; i < points.size(); i++) { + + Color col = i == grabbed ? Color(1, 0.0, 0.0, 0.9) : points[i].color.contrasted(); + col.a = 0.9; + + draw_line(Vector2(points[i].offset * total_w, 0), Vector2(points[i].offset * total_w, h / 2), col); + draw_rect(Rect2(points[i].offset * total_w - POINT_WIDTH / 2, h / 2, POINT_WIDTH, h / 2), Color(0.6, 0.6, 0.6, i == grabbed ? 0.9 : 0.4)); + draw_line(Vector2(points[i].offset * total_w - POINT_WIDTH / 2, h / 2), Vector2(points[i].offset * total_w - POINT_WIDTH / 2, h - 1), col); + draw_line(Vector2(points[i].offset * total_w + POINT_WIDTH / 2, h / 2), Vector2(points[i].offset * total_w + POINT_WIDTH / 2, h - 1), col); + draw_line(Vector2(points[i].offset * total_w - POINT_WIDTH / 2, h / 2), Vector2(points[i].offset * total_w + POINT_WIDTH / 2, h / 2), col); + draw_line(Vector2(points[i].offset * total_w - POINT_WIDTH / 2, h - 1), Vector2(points[i].offset * total_w + POINT_WIDTH / 2, h - 1), col); + } + + //Draw "button" for color selector + _draw_checker(total_w + 3, 0, h, h); + if (grabbed != -1) { + //Draw with selection color + draw_rect(Rect2(total_w + 3, 0, h, h), points[grabbed].color); + } else { + //if no color selected draw grey color with 'X' on top. + draw_rect(Rect2(total_w + 3, 0, h, h), Color(0.5, 0.5, 0.5, 1)); + draw_line(Vector2(total_w + 3, 0), Vector2(total_w + 3 + h, h), Color(1, 1, 1, 0.6)); + draw_line(Vector2(total_w + 3, h), Vector2(total_w + 3 + h, 0), Color(1, 1, 1, 0.6)); + } + + //Draw borders around color ramp if in focus + if (has_focus()) { + + draw_line(Vector2(-1, -1), Vector2(total_w + 1, -1), Color(1, 1, 1, 0.6)); + draw_line(Vector2(total_w + 1, -1), Vector2(total_w + 1, h + 1), Color(1, 1, 1, 0.6)); + draw_line(Vector2(total_w + 1, h + 1), Vector2(-1, h + 1), Color(1, 1, 1, 0.6)); + draw_line(Vector2(-1, -1), Vector2(-1, h + 1), Color(1, 1, 1, 0.6)); + } + } +} + +void GradientTextureEdit::_draw_checker(int x, int y, int w, int h) { + //Draw it with polygon to insert UVs for scale + Vector<Vector2> backPoints; + backPoints.push_back(Vector2(x, y)); + backPoints.push_back(Vector2(x, y + h)); + backPoints.push_back(Vector2(x + w, y + h)); + backPoints.push_back(Vector2(x + w, y)); + Vector<Color> colorPoints; + colorPoints.push_back(Color(1, 1, 1, 1)); + colorPoints.push_back(Color(1, 1, 1, 1)); + colorPoints.push_back(Color(1, 1, 1, 1)); + colorPoints.push_back(Color(1, 1, 1, 1)); + Vector<Vector2> uvPoints; + //Draw checker pattern pixel-perfect and scale it by 2. + uvPoints.push_back(Vector2(x, y)); + uvPoints.push_back(Vector2(x, y + h * .5f / checker->get_height())); + uvPoints.push_back(Vector2(x + w * .5f / checker->get_width(), y + h * .5f / checker->get_height())); + uvPoints.push_back(Vector2(x + w * .5f / checker->get_width(), y)); + draw_polygon(backPoints, colorPoints, uvPoints, checker); +} + +Size2 GradientTextureEdit::get_minimum_size() const { + + return Vector2(0, 16); +} + +void GradientTextureEdit::_color_changed(const Color &p_color) { + + if (grabbed == -1) + return; + points[grabbed].color = p_color; + update(); + emit_signal("ramp_changed"); +} + +void GradientTextureEdit::set_ramp(const Vector<float> &p_offsets, const Vector<Color> &p_colors) { + + ERR_FAIL_COND(p_offsets.size() != p_colors.size()); + points.clear(); + for (int i = 0; i < p_offsets.size(); i++) { + GradientTexture::Point p; + p.offset = p_offsets[i]; + p.color = p_colors[i]; + points.push_back(p); + } + + points.sort(); + update(); +} + +Vector<float> GradientTextureEdit::get_offsets() const { + Vector<float> ret; + for (int i = 0; i < points.size(); i++) + ret.push_back(points[i].offset); + return ret; +} + +Vector<Color> GradientTextureEdit::get_colors() const { + Vector<Color> ret; + for (int i = 0; i < points.size(); i++) + ret.push_back(points[i].color); + return ret; +} + +void GradientTextureEdit::set_points(Vector<GradientTexture::Point> &p_points) { + if (points.size() != p_points.size()) + grabbed = -1; + points.clear(); + points = p_points; +} + +Vector<GradientTexture::Point> &GradientTextureEdit::get_points() { + return points; +} + +void GradientTextureEdit::_bind_methods() { + ClassDB::bind_method(D_METHOD("_gui_input"), &GradientTextureEdit::_gui_input); + ClassDB::bind_method(D_METHOD("_color_changed"), &GradientTextureEdit::_color_changed); + ADD_SIGNAL(MethodInfo("ramp_changed")); +} + +GradientTextureEditorPlugin::GradientTextureEditorPlugin(EditorNode *p_node) { + + editor = p_node; + ramp_editor = memnew(GradientTextureEdit); + + gradient_button = editor->add_bottom_panel_item("GradientTexture", ramp_editor); + + gradient_button->hide(); + ramp_editor->set_custom_minimum_size(Size2(100, 100 * EDSCALE)); + ramp_editor->hide(); + ramp_editor->connect("ramp_changed", this, "ramp_changed"); +} + +void GradientTextureEditorPlugin::edit(Object *p_object) { + + GradientTexture *gradient_texture = p_object->cast_to<GradientTexture>(); + if (!gradient_texture) + return; + gradient_texture_ref = Ref<GradientTexture>(gradient_texture); + ramp_editor->set_points(gradient_texture_ref->get_points()); +} + +bool GradientTextureEditorPlugin::handles(Object *p_object) const { + + return p_object->is_class("GradientTexture"); +} + +void GradientTextureEditorPlugin::make_visible(bool p_visible) { + + if (p_visible) { + gradient_button->show(); + editor->make_bottom_panel_item_visible(ramp_editor); + + } else { + + gradient_button->hide(); + if (ramp_editor->is_visible_in_tree()) + editor->hide_bottom_panel(); + } +} + +void GradientTextureEditorPlugin::_ramp_changed() { + + if (gradient_texture_ref.is_valid()) { + + UndoRedo *ur = EditorNode::get_singleton()->get_undo_redo(); + + //Not sure if I should convert this data to PoolVector + Vector<float> new_offsets = ramp_editor->get_offsets(); + Vector<Color> new_colors = ramp_editor->get_colors(); + Vector<float> old_offsets = gradient_texture_ref->get_offsets(); + Vector<Color> old_colors = gradient_texture_ref->get_colors(); + + if (old_offsets.size() != new_offsets.size()) + ur->create_action(TTR("Add/Remove Color Ramp Point")); + else + ur->create_action(TTR("Modify Color Ramp"), UndoRedo::MERGE_ENDS); + ur->add_do_method(this, "undo_redo_gradient_texture", new_offsets, new_colors); + ur->add_undo_method(this, "undo_redo_gradient_texture", old_offsets, old_colors); + ur->commit_action(); + + //gradient_texture_ref->set_points(ramp_editor->get_points()); + } +} + +void GradientTextureEditorPlugin::_undo_redo_gradient_texture(const Vector<float> &offsets, + const Vector<Color> &colors) { + + gradient_texture_ref->set_offsets(offsets); + gradient_texture_ref->set_colors(colors); + ramp_editor->set_points(gradient_texture_ref->get_points()); + ramp_editor->update(); +} + +GradientTextureEditorPlugin::~GradientTextureEditorPlugin() { +} + +void GradientTextureEditorPlugin::_bind_methods() { + ClassDB::bind_method(D_METHOD("ramp_changed"), &GradientTextureEditorPlugin::_ramp_changed); + ClassDB::bind_method(D_METHOD("undo_redo_gradient_texture", "offsets", "colors"), &GradientTextureEditorPlugin::_undo_redo_gradient_texture); +} diff --git a/editor/plugins/gradient_texture_editor_plugin.h b/editor/plugins/gradient_texture_editor_plugin.h new file mode 100644 index 0000000000..5af828f17c --- /dev/null +++ b/editor/plugins/gradient_texture_editor_plugin.h @@ -0,0 +1,69 @@ +#ifndef GRADIENT_TEXTURE_EDITOR_PLUGIN_H +#define GRADIENT_TEXTURE_EDITOR_PLUGIN_H + +#include "editor/editor_node.h" +#include "editor/editor_plugin.h" +#include "scene/resources/texture.h" + +class GradientTextureEdit : public Control { + + GDCLASS(GradientTextureEdit, Control); + + PopupPanel *popup; + ColorPicker *picker; + + Ref<ImageTexture> checker; + + bool grabbing; + int grabbed; + Vector<GradientTexture::Point> points; + + void _draw_checker(int x, int y, int w, int h); + void _color_changed(const Color &p_color); + int _get_point_from_pos(int x); + void _show_color_picker(); + +protected: + void _gui_input(const InputEvent &p_event); + void _notification(int p_what); + static void _bind_methods(); + +public: + void set_ramp(const Vector<float> &p_offsets, const Vector<Color> &p_colors); + Vector<float> get_offsets() const; + Vector<Color> get_colors() const; + void set_points(Vector<GradientTexture::Point> &p_points); + Vector<GradientTexture::Point> &get_points(); + virtual Size2 get_minimum_size() const; + + GradientTextureEdit(); + virtual ~GradientTextureEdit(); +}; + +class GradientTextureEditorPlugin : public EditorPlugin { + + GDCLASS(GradientTextureEditorPlugin, EditorPlugin); + + bool _2d; + Ref<GradientTexture> gradient_texture_ref; + GradientTextureEdit *ramp_editor; + EditorNode *editor; + ToolButton *gradient_button; + +protected: + static void _bind_methods(); + void _ramp_changed(); + void _undo_redo_gradient_texture(const Vector<float> &offsets, const Vector<Color> &colors); + +public: + virtual String get_name() const { return "GradientTexture"; } + bool has_main_screen() const { return false; } + virtual void edit(Object *p_node); + virtual bool handles(Object *p_node) const; + virtual void make_visible(bool p_visible); + + GradientTextureEditorPlugin(EditorNode *p_node); + ~GradientTextureEditorPlugin(); +}; + +#endif // GRADIENT_TEXTURE_EDITOR_PLUGIN_H diff --git a/editor/plugins/item_list_editor_plugin.cpp b/editor/plugins/item_list_editor_plugin.cpp index fabbf07a15..7f56286f08 100644 --- a/editor/plugins/item_list_editor_plugin.cpp +++ b/editor/plugins/item_list_editor_plugin.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/item_list_editor_plugin.h b/editor/plugins/item_list_editor_plugin.h index 064c43bda5..042e88839f 100644 --- a/editor/plugins/item_list_editor_plugin.h +++ b/editor/plugins/item_list_editor_plugin.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/light_occluder_2d_editor_plugin.cpp b/editor/plugins/light_occluder_2d_editor_plugin.cpp index 6db25e8455..73b615d817 100644 --- a/editor/plugins/light_occluder_2d_editor_plugin.cpp +++ b/editor/plugins/light_occluder_2d_editor_plugin.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/light_occluder_2d_editor_plugin.h b/editor/plugins/light_occluder_2d_editor_plugin.h index 68e5e3f729..8e0817e61e 100644 --- a/editor/plugins/light_occluder_2d_editor_plugin.h +++ b/editor/plugins/light_occluder_2d_editor_plugin.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/line_2d_editor_plugin.cpp b/editor/plugins/line_2d_editor_plugin.cpp index b3afe0bb93..69e329eb1a 100644 --- a/editor/plugins/line_2d_editor_plugin.cpp +++ b/editor/plugins/line_2d_editor_plugin.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/line_2d_editor_plugin.h b/editor/plugins/line_2d_editor_plugin.h index 6bade92da4..7477f7eee5 100644 --- a/editor/plugins/line_2d_editor_plugin.h +++ b/editor/plugins/line_2d_editor_plugin.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/material_editor_plugin.cpp b/editor/plugins/material_editor_plugin.cpp index 8716349cb4..179ef27eda 100644 --- a/editor/plugins/material_editor_plugin.cpp +++ b/editor/plugins/material_editor_plugin.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/material_editor_plugin.h b/editor/plugins/material_editor_plugin.h index 30bed67a5e..a0a91f53a6 100644 --- a/editor/plugins/material_editor_plugin.h +++ b/editor/plugins/material_editor_plugin.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/mesh_editor_plugin.cpp b/editor/plugins/mesh_editor_plugin.cpp index 93f417247e..61da860cab 100644 --- a/editor/plugins/mesh_editor_plugin.cpp +++ b/editor/plugins/mesh_editor_plugin.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/mesh_editor_plugin.h b/editor/plugins/mesh_editor_plugin.h index ec6d67e2f7..1d89448ed8 100644 --- a/editor/plugins/mesh_editor_plugin.h +++ b/editor/plugins/mesh_editor_plugin.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/mesh_instance_editor_plugin.cpp b/editor/plugins/mesh_instance_editor_plugin.cpp index 972e92e51e..ab09d0dd96 100644 --- a/editor/plugins/mesh_instance_editor_plugin.cpp +++ b/editor/plugins/mesh_instance_editor_plugin.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/mesh_instance_editor_plugin.h b/editor/plugins/mesh_instance_editor_plugin.h index 54d42d1a01..d80ffa071d 100644 --- a/editor/plugins/mesh_instance_editor_plugin.h +++ b/editor/plugins/mesh_instance_editor_plugin.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/multimesh_editor_plugin.cpp b/editor/plugins/multimesh_editor_plugin.cpp index 126927480a..9520cc5297 100644 --- a/editor/plugins/multimesh_editor_plugin.cpp +++ b/editor/plugins/multimesh_editor_plugin.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/multimesh_editor_plugin.h b/editor/plugins/multimesh_editor_plugin.h index eb46733082..0c633a4f60 100644 --- a/editor/plugins/multimesh_editor_plugin.h +++ b/editor/plugins/multimesh_editor_plugin.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/navigation_polygon_editor_plugin.cpp b/editor/plugins/navigation_polygon_editor_plugin.cpp index e5b2594872..be8c46f379 100644 --- a/editor/plugins/navigation_polygon_editor_plugin.cpp +++ b/editor/plugins/navigation_polygon_editor_plugin.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/navigation_polygon_editor_plugin.h b/editor/plugins/navigation_polygon_editor_plugin.h index ba18756869..6de77b5ef3 100644 --- a/editor/plugins/navigation_polygon_editor_plugin.h +++ b/editor/plugins/navigation_polygon_editor_plugin.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/particles_2d_editor_plugin.cpp b/editor/plugins/particles_2d_editor_plugin.cpp index 94644cd410..35743ce0b3 100644 --- a/editor/plugins/particles_2d_editor_plugin.cpp +++ b/editor/plugins/particles_2d_editor_plugin.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/particles_2d_editor_plugin.h b/editor/plugins/particles_2d_editor_plugin.h index 56122c4354..e532157c35 100644 --- a/editor/plugins/particles_2d_editor_plugin.h +++ b/editor/plugins/particles_2d_editor_plugin.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/particles_editor_plugin.cpp b/editor/plugins/particles_editor_plugin.cpp index fd26674a0e..2b8189336b 100644 --- a/editor/plugins/particles_editor_plugin.cpp +++ b/editor/plugins/particles_editor_plugin.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -27,30 +28,24 @@ /* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ /*************************************************************************/ -#if 0 #include "particles_editor_plugin.h" #include "editor/plugins/spatial_editor_plugin.h" #include "io/resource_loader.h" -#include "servers/visual/particle_system_sw.h" - void ParticlesEditor::_node_removed(Node *p_node) { - if(p_node==node) { - node=NULL; + if (p_node == node) { + node = NULL; hide(); } - } - -void ParticlesEditor::_resource_seleted(const String& p_res) { +void ParticlesEditor::_resource_seleted(const String &p_res) { //print_line("selected resource path: "+p_res); } -void ParticlesEditor::_node_selected(const NodePath& p_path){ - +void ParticlesEditor::_node_selected(const NodePath &p_path) { Node *sel = get_node(p_path); if (!sel) @@ -66,12 +61,11 @@ void ParticlesEditor::_node_selected(const NodePath& p_path){ geometry = vi->get_faces(VisualInstance::FACES_SOLID); - if (geometry.size()==0) { + if (geometry.size() == 0) { err_dialog->set_text(TTR("Node does not contain geometry (faces).")); err_dialog->popup_centered_minsize(); return; - } Transform geom_xform = node->get_global_transform().affine_inverse() * vi->get_global_transform(); @@ -79,20 +73,17 @@ void ParticlesEditor::_node_selected(const NodePath& p_path){ int gc = geometry.size(); PoolVector<Face3>::Write w = geometry.write(); - - for(int i=0;i<gc;i++) { - for(int j=0;j<3;j++) { - w[i].vertex[j] = geom_xform.xform( w[i].vertex[j] ); + for (int i = 0; i < gc; i++) { + for (int j = 0; j < 3; j++) { + w[i].vertex[j] = geom_xform.xform(w[i].vertex[j]); } } - w = PoolVector<Face3>::Write(); - emission_dialog->popup_centered(Size2(300,130)); + emission_dialog->popup_centered(Size2(300, 130)); } - /* void ParticlesEditor::_populate() { @@ -112,74 +103,77 @@ void ParticlesEditor::_populate() { void ParticlesEditor::_notification(int p_notification) { - if (p_notification==NOTIFICATION_ENTER_TREE) { - options->set_icon(options->get_popup()->get_icon("Particles","EditorIcons")); - + if (p_notification == NOTIFICATION_ENTER_TREE) { + options->set_icon(options->get_popup()->get_icon("Particles", "EditorIcons")); } } - void ParticlesEditor::_menu_option(int p_option) { - - switch(p_option) { + switch (p_option) { case MENU_OPTION_GENERATE_AABB: { - +#if 0 Transform globalizer = node->get_global_transform(); ParticleSystemSW pssw; - for(int i=0;i<VS::PARTICLE_VAR_MAX;i++) { + for (int i = 0; i < VS::PARTICLE_VAR_MAX; i++) { - pssw.particle_vars[i]=node->get_variable((Particles::Variable)i); - pssw.particle_randomness[i]=node->get_randomness((Particles::Variable)i); + pssw.particle_vars[i] = node->get_variable((Particles::Variable)i); + pssw.particle_randomness[i] = node->get_randomness((Particles::Variable)i); } - pssw.emission_half_extents=node->get_emission_half_extents(); - pssw.emission_points=node->get_emission_points(); - pssw.emission_base_velocity=node->get_emission_base_velocity(); - pssw.amount=node->get_amount(); - pssw.gravity_normal=node->get_gravity_normal(); - pssw.emitting=true; - pssw.height_from_velocity=node->has_height_from_velocity(); - pssw.color_phase_count=1; - + pssw.emission_half_extents = node->get_emission_half_extents(); + pssw.emission_points = node->get_emission_points(); + pssw.emission_base_velocity = node->get_emission_base_velocity(); + pssw.amount = node->get_amount(); + pssw.gravity_normal = node->get_gravity_normal(); + pssw.emitting = true; + pssw.height_from_velocity = node->has_height_from_velocity(); + pssw.color_phase_count = 1; ParticleSystemProcessSW pp; - float delta=0.01; - float lifetime=pssw.particle_vars[VS::PARTICLE_LIFETIME]; - + float delta = 0.01; + float lifetime = pssw.particle_vars[VS::PARTICLE_LIFETIME]; Transform localizer = globalizer.affine_inverse(); AABB aabb; - for(float t=0;t<lifetime;t+=delta) { + for (float t = 0; t < lifetime; t += delta) { - pp.process(&pssw,globalizer,delta); - for(int i=0;i<pp.particle_data.size();i++) { + pp.process(&pssw, globalizer, delta); + for (int i = 0; i < pp.particle_data.size(); i++) { Vector3 p = localizer.xform(pp.particle_data[i].pos); - if (t==0 && i==0) - aabb.pos=p; + if (t == 0 && i == 0) + aabb.pos = p; else aabb.expand_to(p); } } - aabb.grow_by( aabb.get_longest_axis_size()*0.2); + aabb.grow_by(aabb.get_longest_axis_size() * 0.2); node->set_visibility_aabb(aabb); - - +#endif } break; case MENU_OPTION_CREATE_EMISSION_VOLUME_FROM_MESH: { - + Ref<ParticlesMaterial> material = node->get_process_material(); + if (material.is_null()) { + EditorNode::get_singleton()->show_warning(TTR("A processor material of type 'ParticlesMaterial' is required.")); + return; + } emission_file_dialog->popup_centered_ratio(); } break; case MENU_OPTION_CREATE_EMISSION_VOLUME_FROM_NODE: { -/* + Ref<ParticlesMaterial> material = node->get_process_material(); + if (material.is_null()) { + EditorNode::get_singleton()->show_warning(TTR("A processor material of type 'ParticlesMaterial' is required.")); + return; + } + /* Node *root = get_scene()->get_root_node(); ERR_FAIL_COND(!root); EditorNode *en = root->cast_to<EditorNode>(); @@ -192,50 +186,50 @@ void ParticlesEditor::_menu_option(int p_option) { } } - void ParticlesEditor::edit(Particles *p_particles) { - node=p_particles; - + node = p_particles; } void ParticlesEditor::_generate_emission_points() { /// hacer codigo aca - PoolVector<Vector3> points; + PoolVector<float> points; + bool use_normals = emission_fill->get_selected() == 1; + PoolVector<float> normals; - if (emission_fill->get_selected()==0) { + if (emission_fill->get_selected() < 2) { - float area_accum=0; - Map<float,int> triangle_area_map; - print_line("geometry size: "+itos(geometry.size())); + float area_accum = 0; + Map<float, int> triangle_area_map; + print_line("geometry size: " + itos(geometry.size())); - for(int i=0;i<geometry.size();i++) { + for (int i = 0; i < geometry.size(); i++) { float area = geometry[i].get_area(); - if (area<CMP_EPSILON) + if (area < CMP_EPSILON) continue; - triangle_area_map[area_accum]=i; - area_accum+=area; + triangle_area_map[area_accum] = i; + area_accum += area; } - if (!triangle_area_map.size() || area_accum==0) { + if (!triangle_area_map.size() || area_accum == 0) { err_dialog->set_text(TTR("Faces contain no area!")); err_dialog->popup_centered_minsize(); return; } - int emissor_count=emission_amount->get_val(); + int emissor_count = emission_amount->get_value(); - for(int i=0;i<emissor_count;i++) { + for (int i = 0; i < emissor_count; i++) { - float areapos = Math::random(0,area_accum); + float areapos = Math::random(0.0f, area_accum); - Map<float,int>::Element *E = triangle_area_map.find_closest(areapos); + Map<float, int>::Element *E = triangle_area_map.find_closest(areapos); ERR_FAIL_COND(!E) int index = E->get(); - ERR_FAIL_INDEX(index,geometry.size()); + ERR_FAIL_INDEX(index, geometry.size()); // ok FINALLY get face Face3 face = geometry[index]; @@ -243,13 +237,22 @@ void ParticlesEditor::_generate_emission_points() { Vector3 pos = face.get_random_point_inside(); - points.push_back(pos); + points.push_back(pos.x); + points.push_back(pos.y); + points.push_back(pos.z); + + if (use_normals) { + Vector3 normal = face.get_plane().normal; + normals.push_back(normal.x); + normals.push_back(normal.y); + normals.push_back(normal.z); + } } } else { int gcount = geometry.size(); - if (gcount==0) { + if (gcount == 0) { err_dialog->set_text(TTR("No faces!")); err_dialog->popup_centered_minsize(); @@ -258,32 +261,32 @@ void ParticlesEditor::_generate_emission_points() { PoolVector<Face3>::Read r = geometry.read(); - AABB aabb; + Rect3 aabb; - for(int i=0;i<gcount;i++) { + for (int i = 0; i < gcount; i++) { - for(int j=0;j<3;j++) { + for (int j = 0; j < 3; j++) { - if (i==0 && j==0) - aabb.pos=r[i].vertex[j]; + if (i == 0 && j == 0) + aabb.pos = r[i].vertex[j]; else aabb.expand_to(r[i].vertex[j]); } } - int emissor_count=emission_amount->get_val(); + int emissor_count = emission_amount->get_value(); - for(int i=0;i<emissor_count;i++) { + for (int i = 0; i < emissor_count; i++) { - int attempts=5; + int attempts = 5; - for(int j=0;j<attempts;j++) { + for (int j = 0; j < attempts; j++) { Vector3 dir; - dir[Math::rand()%3]=1.0; - Vector3 ofs = Vector3(1,1,1)-dir; - ofs=(Vector3(1,1,1)-dir)*Vector3(Math::randf(),Math::randf(),Math::randf())*aabb.size; - ofs+=aabb.pos; + dir[Math::rand() % 3] = 1.0; + Vector3 ofs = Vector3(1, 1, 1) - dir; + ofs = (Vector3(1, 1, 1) - dir) * Vector3(Math::randf(), Math::randf(), Math::randf()) * aabb.size; + ofs += aabb.pos; Vector3 ofsv = ofs + aabb.size * dir; @@ -291,135 +294,172 @@ void ParticlesEditor::_generate_emission_points() { ofs -= dir; ofsv += dir; - float max=-1e7,min=1e7; + float max = -1e7, min = 1e7; - for(int k=0;k<gcount;k++) { + for (int k = 0; k < gcount; k++) { - const Face3& f3 = r[k]; + const Face3 &f3 = r[k]; Vector3 res; - if (f3.intersects_segment(ofs,ofsv,&res)) { + if (f3.intersects_segment(ofs, ofsv, &res)) { - res-=ofs; + res -= ofs; float d = dir.dot(res); - if (d<min) - min=d; - if (d>max) - max=d; - + if (d < min) + min = d; + if (d > max) + max = d; } } - - if (max<min) + if (max < min) continue; //lost attempt - float val = min + (max-min)*Math::randf(); + float val = min + (max - min) * Math::randf(); Vector3 point = ofs + dir * val; - points.push_back(point); + points.push_back(point.x); + points.push_back(point.y); + points.push_back(point.z); break; } } } - //print_line("point count: "+itos(points.size())); - node->set_emission_points(points); + int point_count = points.size() / 3; + + int w = 2048; + int h = (point_count / 2048) + 1; + PoolVector<uint8_t> point_img; + point_img.resize(w * h * 3 * sizeof(float)); + + { + PoolVector<uint8_t>::Write iw = point_img.write(); + zeromem(iw.ptr(), w * h * 3 * sizeof(float)); + PoolVector<float>::Read r = points.read(); + copymem(iw.ptr(), r.ptr(), point_count * sizeof(float) * 3); + } + + Image image(w, h, false, Image::FORMAT_RGBF, point_img); + + Ref<ImageTexture> tex; + tex.instance(); + tex->create_from_image(image, Texture::FLAG_FILTER); + + Ref<ParticlesMaterial> material = node->get_process_material(); + ERR_FAIL_COND(material.is_null()); + + if (use_normals) { + + material->set_emission_shape(ParticlesMaterial::EMISSION_SHAPE_DIRECTED_POINTS); + material->set_emission_point_count(point_count); + material->set_emission_point_texture(tex); + + PoolVector<uint8_t> point_img2; + point_img2.resize(w * h * 3 * sizeof(float)); + + { + PoolVector<uint8_t>::Write iw = point_img2.write(); + zeromem(iw.ptr(), w * h * 3 * sizeof(float)); + PoolVector<float>::Read r = normals.read(); + copymem(iw.ptr(), r.ptr(), point_count * sizeof(float) * 3); + } + + Image image2(w, h, false, Image::FORMAT_RGBF, point_img2); + + Ref<ImageTexture> tex2; + tex2.instance(); + tex2->create_from_image(image2, Texture::FLAG_FILTER); + + material->set_emission_normal_texture(tex2); + } else { + + material->set_emission_shape(ParticlesMaterial::EMISSION_SHAPE_POINTS); + material->set_emission_point_count(point_count); + material->set_emission_point_texture(tex); + } + + //print_line("point count: "+itos(points.size())); + //node->set_emission_points(points); } void ParticlesEditor::_bind_methods() { - ClassDB::bind_method("_menu_option",&ParticlesEditor::_menu_option); - ClassDB::bind_method("_resource_seleted",&ParticlesEditor::_resource_seleted); - ClassDB::bind_method("_node_selected",&ParticlesEditor::_node_selected); - ClassDB::bind_method("_generate_emission_points",&ParticlesEditor::_generate_emission_points); + ClassDB::bind_method("_menu_option", &ParticlesEditor::_menu_option); + ClassDB::bind_method("_resource_seleted", &ParticlesEditor::_resource_seleted); + ClassDB::bind_method("_node_selected", &ParticlesEditor::_node_selected); + ClassDB::bind_method("_generate_emission_points", &ParticlesEditor::_generate_emission_points); //ClassDB::bind_method("_populate",&ParticlesEditor::_populate); - } ParticlesEditor::ParticlesEditor() { - particles_editor_hb = memnew ( HBoxContainer ); + particles_editor_hb = memnew(HBoxContainer); SpatialEditor::get_singleton()->add_control_to_menu_panel(particles_editor_hb); - options = memnew( MenuButton ); + options = memnew(MenuButton); particles_editor_hb->add_child(options); particles_editor_hb->hide(); options->set_text("Particles"); - options->get_popup()->add_item(TTR("Generate AABB"),MENU_OPTION_GENERATE_AABB); + options->get_popup()->add_item(TTR("Generate AABB"), MENU_OPTION_GENERATE_AABB); options->get_popup()->add_separator(); - options->get_popup()->add_item(TTR("Create Emitter From Mesh"),MENU_OPTION_CREATE_EMISSION_VOLUME_FROM_MESH); - options->get_popup()->add_item(TTR("Create Emitter From Node"),MENU_OPTION_CREATE_EMISSION_VOLUME_FROM_NODE); - options->get_popup()->add_item(TTR("Clear Emitter"),MENU_OPTION_CLEAR_EMISSION_VOLUME); + options->get_popup()->add_item(TTR("Create Emission Points From Mesh"), MENU_OPTION_CREATE_EMISSION_VOLUME_FROM_MESH); + options->get_popup()->add_item(TTR("Create Emission Points From Node"), MENU_OPTION_CREATE_EMISSION_VOLUME_FROM_NODE); + // options->get_popup()->add_item(TTR("Clear Emitter"), MENU_OPTION_CLEAR_EMISSION_VOLUME); - options->get_popup()->connect("id_pressed", this,"_menu_option"); + options->get_popup()->connect("id_pressed", this, "_menu_option"); - emission_dialog = memnew( ConfirmationDialog ); + emission_dialog = memnew(ConfirmationDialog); emission_dialog->set_title(TTR("Create Emitter")); add_child(emission_dialog); - Label *l = memnew(Label); - l->set_pos(Point2(5,5)); - l->set_text(TTR("Emission Positions:")); - emission_dialog->add_child(l); - + VBoxContainer *emd_vb = memnew(VBoxContainer); + emission_dialog->add_child(emd_vb); - emission_amount = memnew( SpinBox ); - emission_amount->set_anchor(MARGIN_RIGHT,ANCHOR_END); - emission_amount->set_begin( Point2(20,23)); - emission_amount->set_end( Point2(5,25)); + emission_amount = memnew(SpinBox); emission_amount->set_min(1); - emission_amount->set_max(65536); - emission_amount->set_val(512); - emission_dialog->add_child(emission_amount); - emission_dialog->get_ok()->set_text(TTR("Create")); - emission_dialog->connect("confirmed",this,"_generate_emission_points"); - - l = memnew(Label); - l->set_pos(Point2(5,50)); - l->set_text(TTR("Emission Fill:")); - emission_dialog->add_child(l); - - emission_fill = memnew( OptionButton ); - emission_fill->set_anchor(MARGIN_RIGHT,ANCHOR_END); - emission_fill->set_begin( Point2(20,70)); - emission_fill->set_end( Point2(5,75)); - emission_fill->add_item(TTR("Surface")); + emission_amount->set_max(100000); + emission_amount->set_value(512); + emd_vb->add_margin_child(TTR("Emission Points:"), emission_amount); + + emission_fill = memnew(OptionButton); + emission_fill->add_item(TTR("Surface Points")); + emission_fill->add_item(TTR("Surface Points+Normal (Directed)")); emission_fill->add_item(TTR("Volume")); - emission_dialog->add_child(emission_fill); + emd_vb->add_margin_child(TTR("Emission Source: "), emission_fill); + + emission_dialog->get_ok()->set_text(TTR("Create")); + emission_dialog->connect("confirmed", this, "_generate_emission_points"); - err_dialog = memnew( ConfirmationDialog ); + err_dialog = memnew(ConfirmationDialog); //err_dialog->get_cancel()->hide(); add_child(err_dialog); - - emission_file_dialog = memnew( EditorFileDialog ); + emission_file_dialog = memnew(EditorFileDialog); add_child(emission_file_dialog); - emission_file_dialog->connect("file_selected",this,"_resource_seleted"); - emission_tree_dialog = memnew( SceneTreeDialog ); + emission_file_dialog->connect("file_selected", this, "_resource_seleted"); + emission_tree_dialog = memnew(SceneTreeDialog); add_child(emission_tree_dialog); - emission_tree_dialog->connect("selected",this,"_node_selected"); + emission_tree_dialog->connect("selected", this, "_node_selected"); List<String> extensions; - ResourceLoader::get_recognized_extensions_for_type("Mesh",&extensions); + ResourceLoader::get_recognized_extensions_for_type("Mesh", &extensions); emission_file_dialog->clear_filters(); - for(int i=0;i<extensions.size();i++) { + for (int i = 0; i < extensions.size(); i++) { - emission_file_dialog->add_filter("*."+extensions[i]+" ; "+extensions[i].to_upper()); + emission_file_dialog->add_filter("*." + extensions[i] + " ; " + extensions[i].to_upper()); } emission_file_dialog->set_mode(EditorFileDialog::MODE_OPEN_FILE); //options->set_anchor(MARGIN_LEFT,Control::ANCHOR_END); //options->set_anchor(MARGIN_RIGHT,Control::ANCHOR_END); - } - void ParticlesEditorPlugin::edit(Object *p_object) { particles_editor->edit(p_object->cast_to<Particles>()); @@ -427,7 +467,7 @@ void ParticlesEditorPlugin::edit(Object *p_object) { bool ParticlesEditorPlugin::handles(Object *p_object) const { - return p_object->is_type("Particles"); + return p_object->is_class("Particles"); } void ParticlesEditorPlugin::make_visible(bool p_visible) { @@ -440,21 +480,16 @@ void ParticlesEditorPlugin::make_visible(bool p_visible) { particles_editor->hide(); particles_editor->edit(NULL); } - } ParticlesEditorPlugin::ParticlesEditorPlugin(EditorNode *p_node) { - editor=p_node; - particles_editor = memnew( ParticlesEditor ); + editor = p_node; + particles_editor = memnew(ParticlesEditor); editor->get_viewport()->add_child(particles_editor); particles_editor->hide(); } - -ParticlesEditorPlugin::~ParticlesEditorPlugin() -{ +ParticlesEditorPlugin::~ParticlesEditorPlugin() { } - -#endif diff --git a/editor/plugins/particles_editor_plugin.h b/editor/plugins/particles_editor_plugin.h index 420e20d641..15881fe6a1 100644 --- a/editor/plugins/particles_editor_plugin.h +++ b/editor/plugins/particles_editor_plugin.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -37,17 +38,16 @@ /** @author Juan Linietsky <reduzio@gmail.com> */ -#if 0 + class ParticlesEditor : public Control { - GDCLASS(ParticlesEditor, Control ); + GDCLASS(ParticlesEditor, Control); Panel *panel; MenuButton *options; HBoxContainer *particles_editor_hb; Particles *node; - EditorFileDialog *emission_file_dialog; SceneTreeDialog *emission_tree_dialog; @@ -57,9 +57,6 @@ class ParticlesEditor : public Control { SpinBox *emission_amount; OptionButton *emission_fill; - - - enum Menu { MENU_OPTION_GENERATE_AABB, @@ -72,35 +69,33 @@ class ParticlesEditor : public Control { PoolVector<Face3> geometry; void _generate_emission_points(); - void _resource_seleted(const String& p_res); - void _node_selected(const NodePath& p_path); + void _resource_seleted(const String &p_res); + void _node_selected(const NodePath &p_path); void _menu_option(int); void _populate(); -friend class ParticlesEditorPlugin; + friend class ParticlesEditorPlugin; protected: - void _notification(int p_notification); void _node_removed(Node *p_node); static void _bind_methods(); -public: +public: void edit(Particles *p_particles); ParticlesEditor(); }; class ParticlesEditorPlugin : public EditorPlugin { - GDCLASS( ParticlesEditorPlugin, EditorPlugin ); + GDCLASS(ParticlesEditorPlugin, EditorPlugin); ParticlesEditor *particles_editor; EditorNode *editor; public: - virtual String get_name() const { return "Particles"; } bool has_main_screen() const { return false; } virtual void edit(Object *p_node); @@ -109,8 +104,6 @@ public: ParticlesEditorPlugin(EditorNode *p_node); ~ParticlesEditorPlugin(); - }; #endif // PARTICLES_EDITOR_PLUGIN_H -#endif diff --git a/editor/plugins/path_2d_editor_plugin.cpp b/editor/plugins/path_2d_editor_plugin.cpp index 36605c118f..e00111b565 100644 --- a/editor/plugins/path_2d_editor_plugin.cpp +++ b/editor/plugins/path_2d_editor_plugin.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/path_2d_editor_plugin.h b/editor/plugins/path_2d_editor_plugin.h index 32dd6868bb..67c6f3c8cb 100644 --- a/editor/plugins/path_2d_editor_plugin.h +++ b/editor/plugins/path_2d_editor_plugin.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/path_editor_plugin.cpp b/editor/plugins/path_editor_plugin.cpp index 0b3587bc5e..9c95cee388 100644 --- a/editor/plugins/path_editor_plugin.cpp +++ b/editor/plugins/path_editor_plugin.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -530,16 +531,16 @@ PathEditorPlugin::PathEditorPlugin(EditorNode *p_node) { editor=p_node; singleton=this; - path_material = Ref<FixedSpatialMaterial>( memnew( FixedSpatialMaterial )); - path_material->set_parameter( FixedSpatialMaterial::PARAM_DIFFUSE,Color(0.5,0.5,1.0,0.8) ); - path_material->set_fixed_flag(FixedSpatialMaterial::FLAG_USE_ALPHA, true); + path_material = Ref<SpatialMaterial>( memnew( SpatialMaterial )); + path_material->set_parameter( SpatialMaterial::PARAM_DIFFUSE,Color(0.5,0.5,1.0,0.8) ); + path_material->set_fixed_flag(SpatialMaterial::FLAG_USE_ALPHA, true); path_material->set_line_width(3); path_material->set_flag(Material::FLAG_DOUBLE_SIDED,true); path_material->set_flag(Material::FLAG_UNSHADED,true); - path_thin_material = Ref<FixedSpatialMaterial>( memnew( FixedSpatialMaterial )); - path_thin_material->set_parameter( FixedSpatialMaterial::PARAM_DIFFUSE,Color(0.5,0.5,1.0,0.4) ); - path_thin_material->set_fixed_flag(FixedSpatialMaterial::FLAG_USE_ALPHA, true); + path_thin_material = Ref<SpatialMaterial>( memnew( SpatialMaterial )); + path_thin_material->set_parameter( SpatialMaterial::PARAM_DIFFUSE,Color(0.5,0.5,1.0,0.4) ); + path_thin_material->set_fixed_flag(SpatialMaterial::FLAG_USE_ALPHA, true); path_thin_material->set_line_width(1); path_thin_material->set_flag(Material::FLAG_DOUBLE_SIDED,true); path_thin_material->set_flag(Material::FLAG_UNSHADED,true); diff --git a/editor/plugins/path_editor_plugin.h b/editor/plugins/path_editor_plugin.h index 9d0f6eb9f2..4dbda10263 100644 --- a/editor/plugins/path_editor_plugin.h +++ b/editor/plugins/path_editor_plugin.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -78,8 +79,8 @@ public: Path *get_edited_path() { return path; } static PathEditorPlugin* singleton; - Ref<FixedSpatialMaterial> path_material; - Ref<FixedSpatialMaterial> path_thin_material; + Ref<SpatialMaterial> path_material; + Ref<SpatialMaterial> path_thin_material; virtual bool forward_spatial_gui_input(Camera* p_camera,const InputEvent& p_event); //virtual bool forward_gui_input(const InputEvent& p_event) { return collision_polygon_editor->forward_gui_input(p_event); } diff --git a/editor/plugins/polygon_2d_editor_plugin.cpp b/editor/plugins/polygon_2d_editor_plugin.cpp index 8d208f9cee..e84e782580 100644 --- a/editor/plugins/polygon_2d_editor_plugin.cpp +++ b/editor/plugins/polygon_2d_editor_plugin.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/polygon_2d_editor_plugin.h b/editor/plugins/polygon_2d_editor_plugin.h index 94eb3f49e8..00926bf2d1 100644 --- a/editor/plugins/polygon_2d_editor_plugin.h +++ b/editor/plugins/polygon_2d_editor_plugin.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/resource_preloader_editor_plugin.cpp b/editor/plugins/resource_preloader_editor_plugin.cpp index 2cdbff8d97..3b8d655af7 100644 --- a/editor/plugins/resource_preloader_editor_plugin.cpp +++ b/editor/plugins/resource_preloader_editor_plugin.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/resource_preloader_editor_plugin.h b/editor/plugins/resource_preloader_editor_plugin.h index 946a3887ef..fad3ba93f1 100644 --- a/editor/plugins/resource_preloader_editor_plugin.h +++ b/editor/plugins/resource_preloader_editor_plugin.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/rich_text_editor_plugin.cpp b/editor/plugins/rich_text_editor_plugin.cpp index 72a9278e62..07c0cced49 100644 --- a/editor/plugins/rich_text_editor_plugin.cpp +++ b/editor/plugins/rich_text_editor_plugin.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/rich_text_editor_plugin.h b/editor/plugins/rich_text_editor_plugin.h index ab3c252fcf..8d42adc236 100644 --- a/editor/plugins/rich_text_editor_plugin.h +++ b/editor/plugins/rich_text_editor_plugin.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/sample_editor_plugin.cpp b/editor/plugins/sample_editor_plugin.cpp index 4d685f4289..0c4a85230c 100644 --- a/editor/plugins/sample_editor_plugin.cpp +++ b/editor/plugins/sample_editor_plugin.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/sample_editor_plugin.h b/editor/plugins/sample_editor_plugin.h index 0e7bccffa7..8f93026c92 100644 --- a/editor/plugins/sample_editor_plugin.h +++ b/editor/plugins/sample_editor_plugin.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/sample_library_editor_plugin.cpp b/editor/plugins/sample_library_editor_plugin.cpp index c164428553..17f24d1a6b 100644 --- a/editor/plugins/sample_library_editor_plugin.cpp +++ b/editor/plugins/sample_library_editor_plugin.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/sample_library_editor_plugin.h b/editor/plugins/sample_library_editor_plugin.h index a41e1538b4..0244fa66ed 100644 --- a/editor/plugins/sample_library_editor_plugin.h +++ b/editor/plugins/sample_library_editor_plugin.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/sample_player_editor_plugin.cpp b/editor/plugins/sample_player_editor_plugin.cpp index a550d96d5c..944f41637f 100644 --- a/editor/plugins/sample_player_editor_plugin.cpp +++ b/editor/plugins/sample_player_editor_plugin.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/sample_player_editor_plugin.h b/editor/plugins/sample_player_editor_plugin.h index 10a08b8a17..5c1b25aaa2 100644 --- a/editor/plugins/sample_player_editor_plugin.h +++ b/editor/plugins/sample_player_editor_plugin.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/script_editor_plugin.cpp b/editor/plugins/script_editor_plugin.cpp index 4e7a0709fa..8ce0f51211 100644 --- a/editor/plugins/script_editor_plugin.cpp +++ b/editor/plugins/script_editor_plugin.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/script_editor_plugin.h b/editor/plugins/script_editor_plugin.h index a73e14423d..51d9bd3fc8 100644 --- a/editor/plugins/script_editor_plugin.h +++ b/editor/plugins/script_editor_plugin.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/script_text_editor.cpp b/editor/plugins/script_text_editor.cpp index 7496ad8cca..159fc0d51f 100644 --- a/editor/plugins/script_text_editor.cpp +++ b/editor/plugins/script_text_editor.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/script_text_editor.h b/editor/plugins/script_text_editor.h index c5f65fb1db..0649e39ab7 100644 --- a/editor/plugins/script_text_editor.h +++ b/editor/plugins/script_text_editor.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/shader_editor_plugin.cpp b/editor/plugins/shader_editor_plugin.cpp index 11dfb7b910..dcb126a754 100644 --- a/editor/plugins/shader_editor_plugin.cpp +++ b/editor/plugins/shader_editor_plugin.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -137,14 +138,35 @@ void ShaderTextEditor::_load_theme_settings() { }*/ } +void ShaderTextEditor::_check_shader_mode() { + + String type = ShaderLanguage::get_shader_type(get_text_edit()->get_text()); + + print_line("type is: " + type); + Shader::Mode mode; + + if (type == "canvas_item") { + mode = Shader::MODE_CANVAS_ITEM; + } else if (type == "particles") { + mode = Shader::MODE_PARTICLES; + } else { + mode = Shader::MODE_SPATIAL; + } + + if (shader->get_mode() != mode) { + shader->set_code(get_text_edit()->get_text()); + _load_theme_settings(); + } +} + void ShaderTextEditor::_code_complete_script(const String &p_code, List<String> *r_options) { - print_line("code complete"); + _check_shader_mode(); ShaderLanguage sl; String calltip; - Error err = sl.complete(p_code, ShaderTypes::get_singleton()->get_functions(VisualServer::ShaderMode(shader->get_mode())), ShaderTypes::get_singleton()->get_modes(VisualServer::ShaderMode(shader->get_mode())), r_options, calltip); + Error err = sl.complete(p_code, ShaderTypes::get_singleton()->get_functions(VisualServer::ShaderMode(shader->get_mode())), ShaderTypes::get_singleton()->get_modes(VisualServer::ShaderMode(shader->get_mode())), ShaderTypes::get_singleton()->get_types(), r_options, calltip); if (calltip != "") { get_text_edit()->set_code_hint(calltip); @@ -153,13 +175,15 @@ void ShaderTextEditor::_code_complete_script(const String &p_code, List<String> void ShaderTextEditor::_validate_script() { + _check_shader_mode(); + String code = get_text_edit()->get_text(); //List<StringName> params; //shader->get_param_list(¶ms); ShaderLanguage sl; - Error err = sl.compile(code, ShaderTypes::get_singleton()->get_functions(VisualServer::ShaderMode(shader->get_mode())), ShaderTypes::get_singleton()->get_modes(VisualServer::ShaderMode(shader->get_mode()))); + Error err = sl.compile(code, ShaderTypes::get_singleton()->get_functions(VisualServer::ShaderMode(shader->get_mode())), ShaderTypes::get_singleton()->get_modes(VisualServer::ShaderMode(shader->get_mode())), ShaderTypes::get_singleton()->get_types()); if (err != OK) { String error_text = "error(" + itos(sl.get_error_line()) + "): " + sl.get_error_text(); diff --git a/editor/plugins/shader_editor_plugin.h b/editor/plugins/shader_editor_plugin.h index 4a56c14ecb..38d5c3e3a6 100644 --- a/editor/plugins/shader_editor_plugin.h +++ b/editor/plugins/shader_editor_plugin.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -44,6 +45,8 @@ class ShaderTextEditor : public CodeTextEditor { Ref<Shader> shader; + void _check_shader_mode(); + protected: static void _bind_methods(); virtual void _load_theme_settings(); diff --git a/editor/plugins/shader_graph_editor_plugin.cpp b/editor/plugins/shader_graph_editor_plugin.cpp index bff7dece20..04dae641bc 100644 --- a/editor/plugins/shader_graph_editor_plugin.cpp +++ b/editor/plugins/shader_graph_editor_plugin.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/shader_graph_editor_plugin.h b/editor/plugins/shader_graph_editor_plugin.h index e5c59f82f4..e7cab50d8d 100644 --- a/editor/plugins/shader_graph_editor_plugin.h +++ b/editor/plugins/shader_graph_editor_plugin.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/spatial_editor_plugin.cpp b/editor/plugins/spatial_editor_plugin.cpp index d642a3c468..4961de56d3 100644 --- a/editor/plugins/spatial_editor_plugin.cpp +++ b/editor/plugins/spatial_editor_plugin.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -2329,12 +2330,12 @@ void SpatialEditor::_generate_selection_box() { st->add_vertex(b); } - Ref<FixedSpatialMaterial> mat = memnew(FixedSpatialMaterial); - mat->set_flag(FixedSpatialMaterial::FLAG_UNSHADED, true); + Ref<SpatialMaterial> mat = memnew(SpatialMaterial); + mat->set_flag(SpatialMaterial::FLAG_UNSHADED, true); mat->set_albedo(Color(1, 1, 1)); - mat->set_feature(FixedSpatialMaterial::FEATURE_TRANSPARENT, true); - mat->set_flag(FixedSpatialMaterial::FLAG_ALBEDO_FROM_VERTEX_COLOR, true); - mat->set_flag(FixedSpatialMaterial::FLAG_SRGB_VERTEX_COLOR, true); + mat->set_feature(SpatialMaterial::FEATURE_TRANSPARENT, true); + mat->set_flag(SpatialMaterial::FLAG_ALBEDO_FROM_VERTEX_COLOR, true); + mat->set_flag(SpatialMaterial::FLAG_SRGB_VERTEX_COLOR, true); st->set_material(mat); selection_box = st->commit(); } @@ -2888,12 +2889,12 @@ void SpatialEditor::_init_indicators() { { indicator_mat.instance(); - indicator_mat->set_flag(FixedSpatialMaterial::FLAG_UNSHADED, true); - //indicator_mat->set_flag(FixedSpatialMaterial::FLAG_ONTOP,true); - indicator_mat->set_flag(FixedSpatialMaterial::FLAG_ALBEDO_FROM_VERTEX_COLOR, true); - indicator_mat->set_flag(FixedSpatialMaterial::FLAG_SRGB_VERTEX_COLOR, true); + indicator_mat->set_flag(SpatialMaterial::FLAG_UNSHADED, true); + //indicator_mat->set_flag(SpatialMaterial::FLAG_ONTOP,true); + indicator_mat->set_flag(SpatialMaterial::FLAG_ALBEDO_FROM_VERTEX_COLOR, true); + indicator_mat->set_flag(SpatialMaterial::FLAG_SRGB_VERTEX_COLOR, true); - indicator_mat->set_feature(FixedSpatialMaterial::FEATURE_TRANSPARENT, true); + indicator_mat->set_feature(SpatialMaterial::FEATURE_TRANSPARENT, true); PoolVector<Color> grid_colors[3]; PoolVector<Vector3> grid_points[3]; @@ -2980,7 +2981,7 @@ void SpatialEditor::_init_indicators() { cursor_points.push_back(Vector3(0, 0, -cs)); cursor_material.instance(); cursor_material->set_albedo(Color(0, 1, 1)); - cursor_material->set_flag(FixedSpatialMaterial::FLAG_UNSHADED, true); + cursor_material->set_flag(SpatialMaterial::FLAG_UNSHADED, true); Array d; d.resize(VS::ARRAY_MAX); @@ -3000,10 +3001,10 @@ void SpatialEditor::_init_indicators() { float gizmo_alph = EditorSettings::get_singleton()->get("editors/3d/manipulator_gizmo_opacity"); - gizmo_hl = Ref<FixedSpatialMaterial>(memnew(FixedSpatialMaterial)); - gizmo_hl->set_flag(FixedSpatialMaterial::FLAG_UNSHADED, true); - gizmo_hl->set_flag(FixedSpatialMaterial::FLAG_ONTOP, true); - gizmo_hl->set_feature(FixedSpatialMaterial::FEATURE_TRANSPARENT, true); + gizmo_hl = Ref<SpatialMaterial>(memnew(SpatialMaterial)); + gizmo_hl->set_flag(SpatialMaterial::FLAG_UNSHADED, true); + gizmo_hl->set_flag(SpatialMaterial::FLAG_ONTOP, true); + gizmo_hl->set_feature(SpatialMaterial::FEATURE_TRANSPARENT, true); gizmo_hl->set_albedo(Color(1, 1, 1, gizmo_alph + 0.2f)); for (int i = 0; i < 3; i++) { @@ -3011,10 +3012,10 @@ void SpatialEditor::_init_indicators() { move_gizmo[i] = Ref<Mesh>(memnew(Mesh)); rotate_gizmo[i] = Ref<Mesh>(memnew(Mesh)); - Ref<FixedSpatialMaterial> mat = memnew(FixedSpatialMaterial); - mat->set_flag(FixedSpatialMaterial::FLAG_UNSHADED, true); - mat->set_flag(FixedSpatialMaterial::FLAG_ONTOP, true); - mat->set_feature(FixedSpatialMaterial::FEATURE_TRANSPARENT, true); + Ref<SpatialMaterial> mat = memnew(SpatialMaterial); + mat->set_flag(SpatialMaterial::FLAG_UNSHADED, true); + mat->set_flag(SpatialMaterial::FLAG_ONTOP, true); + mat->set_feature(SpatialMaterial::FEATURE_TRANSPARENT, true); Color col; col[i] = 1.0; col.a = gizmo_alph; diff --git a/editor/plugins/spatial_editor_plugin.h b/editor/plugins/spatial_editor_plugin.h index 734057dc90..4302927426 100644 --- a/editor/plugins/spatial_editor_plugin.h +++ b/editor/plugins/spatial_editor_plugin.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -323,8 +324,8 @@ private: bool grid_enabled; Ref<Mesh> move_gizmo[3], rotate_gizmo[3]; - Ref<FixedSpatialMaterial> gizmo_color[3]; - Ref<FixedSpatialMaterial> gizmo_hl; + Ref<SpatialMaterial> gizmo_color[3]; + Ref<SpatialMaterial> gizmo_hl; int over_gizmo_handle; @@ -333,8 +334,8 @@ private: RID indicators_instance; RID cursor_mesh; RID cursor_instance; - Ref<FixedSpatialMaterial> indicator_mat; - Ref<FixedSpatialMaterial> cursor_material; + Ref<SpatialMaterial> indicator_mat; + Ref<SpatialMaterial> cursor_material; /* struct Selected { diff --git a/editor/plugins/sprite_frames_editor_plugin.cpp b/editor/plugins/sprite_frames_editor_plugin.cpp index 7adfb90e6f..c7c77fa960 100644 --- a/editor/plugins/sprite_frames_editor_plugin.cpp +++ b/editor/plugins/sprite_frames_editor_plugin.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/sprite_frames_editor_plugin.h b/editor/plugins/sprite_frames_editor_plugin.h index 3e9ba710f3..3778e4ca55 100644 --- a/editor/plugins/sprite_frames_editor_plugin.h +++ b/editor/plugins/sprite_frames_editor_plugin.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/stream_editor_plugin.cpp b/editor/plugins/stream_editor_plugin.cpp index 449f6f610e..43f770ab10 100644 --- a/editor/plugins/stream_editor_plugin.cpp +++ b/editor/plugins/stream_editor_plugin.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/stream_editor_plugin.h b/editor/plugins/stream_editor_plugin.h index 6b68ba02f9..cdd1c126ad 100644 --- a/editor/plugins/stream_editor_plugin.h +++ b/editor/plugins/stream_editor_plugin.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/style_box_editor_plugin.cpp b/editor/plugins/style_box_editor_plugin.cpp index 093f25e2b0..1d067ff975 100644 --- a/editor/plugins/style_box_editor_plugin.cpp +++ b/editor/plugins/style_box_editor_plugin.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/style_box_editor_plugin.h b/editor/plugins/style_box_editor_plugin.h index 1dfe48d97f..effcdb7e5a 100644 --- a/editor/plugins/style_box_editor_plugin.h +++ b/editor/plugins/style_box_editor_plugin.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/texture_editor_plugin.cpp b/editor/plugins/texture_editor_plugin.cpp index 3d05e68cac..62977d86ea 100644 --- a/editor/plugins/texture_editor_plugin.cpp +++ b/editor/plugins/texture_editor_plugin.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/texture_editor_plugin.h b/editor/plugins/texture_editor_plugin.h index 083fbada8b..8750ce4d5e 100644 --- a/editor/plugins/texture_editor_plugin.h +++ b/editor/plugins/texture_editor_plugin.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/texture_region_editor_plugin.cpp b/editor/plugins/texture_region_editor_plugin.cpp index c0b410ba99..4c49b467d8 100644 --- a/editor/plugins/texture_region_editor_plugin.cpp +++ b/editor/plugins/texture_region_editor_plugin.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Author: Mariano Suligoy */ /* */ diff --git a/editor/plugins/texture_region_editor_plugin.h b/editor/plugins/texture_region_editor_plugin.h index b3763acc22..093e2f7d01 100644 --- a/editor/plugins/texture_region_editor_plugin.h +++ b/editor/plugins/texture_region_editor_plugin.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Author: Mariano Suligoy */ /* */ diff --git a/editor/plugins/theme_editor_plugin.cpp b/editor/plugins/theme_editor_plugin.cpp index 03316cc7d9..4ff5951049 100644 --- a/editor/plugins/theme_editor_plugin.cpp +++ b/editor/plugins/theme_editor_plugin.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/theme_editor_plugin.h b/editor/plugins/theme_editor_plugin.h index 3881cf1a41..6db01c6246 100644 --- a/editor/plugins/theme_editor_plugin.h +++ b/editor/plugins/theme_editor_plugin.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/tile_map_editor_plugin.cpp b/editor/plugins/tile_map_editor_plugin.cpp index b80ce35d03..9f99a9b978 100644 --- a/editor/plugins/tile_map_editor_plugin.cpp +++ b/editor/plugins/tile_map_editor_plugin.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/tile_map_editor_plugin.h b/editor/plugins/tile_map_editor_plugin.h index a4774a23b9..3eedb6c941 100644 --- a/editor/plugins/tile_map_editor_plugin.h +++ b/editor/plugins/tile_map_editor_plugin.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/plugins/tile_set_editor_plugin.cpp b/editor/plugins/tile_set_editor_plugin.cpp index 6dee151d99..cbd300a53c 100644 --- a/editor/plugins/tile_set_editor_plugin.cpp +++ b/editor/plugins/tile_set_editor_plugin.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -58,7 +59,7 @@ void TileSetEditor::_import_scene(Node *scene, Ref<TileSet> p_library, bool p_me Sprite *mi = child->cast_to<Sprite>(); Ref<Texture> texture = mi->get_texture(); - Ref<CanvasItemMaterial> material = mi->get_material(); + Ref<ShaderMaterial> material = mi->get_material(); if (texture.is_null()) continue; diff --git a/editor/plugins/tile_set_editor_plugin.h b/editor/plugins/tile_set_editor_plugin.h index 0dabf58f7c..42084c05a3 100644 --- a/editor/plugins/tile_set_editor_plugin.h +++ b/editor/plugins/tile_set_editor_plugin.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/progress_dialog.cpp b/editor/progress_dialog.cpp index 55f220ba9a..51a40faf37 100644 --- a/editor/progress_dialog.cpp +++ b/editor/progress_dialog.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/progress_dialog.h b/editor/progress_dialog.h index 346d6a58b3..75ad0f26dd 100644 --- a/editor/progress_dialog.h +++ b/editor/progress_dialog.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/project_export.cpp b/editor/project_export.cpp index 12c6ea6c51..90db23d236 100644 --- a/editor/project_export.cpp +++ b/editor/project_export.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/project_export.h b/editor/project_export.h index 485222ef03..a3bbfc52ff 100644 --- a/editor/project_export.h +++ b/editor/project_export.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/project_manager.cpp b/editor/project_manager.cpp index 5278efb3c6..cb67d706c3 100644 --- a/editor/project_manager.cpp +++ b/editor/project_manager.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/project_manager.h b/editor/project_manager.h index 918b76cb01..5be28ce2f0 100644 --- a/editor/project_manager.h +++ b/editor/project_manager.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/project_settings.cpp b/editor/project_settings.cpp index b47f95010b..77af64d9e3 100644 --- a/editor/project_settings.cpp +++ b/editor/project_settings.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/project_settings.h b/editor/project_settings.h index 892198e00f..a5a9e04250 100644 --- a/editor/project_settings.h +++ b/editor/project_settings.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/property_editor.cpp b/editor/property_editor.cpp index f2a79a2f47..406dbac5d9 100644 --- a/editor/property_editor.cpp +++ b/editor/property_editor.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/property_editor.h b/editor/property_editor.h index f7f8d0e974..3b68e80ac3 100644 --- a/editor/property_editor.h +++ b/editor/property_editor.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/property_selector.cpp b/editor/property_selector.cpp index 34086ba905..565d25e0e5 100644 --- a/editor/property_selector.cpp +++ b/editor/property_selector.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/property_selector.h b/editor/property_selector.h index c6903ee680..6dc2592176 100644 --- a/editor/property_selector.h +++ b/editor/property_selector.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/pvrtc_compress.cpp b/editor/pvrtc_compress.cpp index 4b4e74cd62..6edcd60188 100644 --- a/editor/pvrtc_compress.cpp +++ b/editor/pvrtc_compress.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/pvrtc_compress.h b/editor/pvrtc_compress.h index 3699a731a0..2bb6d57050 100644 --- a/editor/pvrtc_compress.h +++ b/editor/pvrtc_compress.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/quick_open.cpp b/editor/quick_open.cpp index bc6b0ad9f3..7fce485f3a 100644 --- a/editor/quick_open.cpp +++ b/editor/quick_open.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/quick_open.h b/editor/quick_open.h index bcb0842c49..0e5766033f 100644 --- a/editor/quick_open.h +++ b/editor/quick_open.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/register_exporters.h b/editor/register_exporters.h index d6afd1459a..72f8acb89c 100644 --- a/editor/register_exporters.h +++ b/editor/register_exporters.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/reparent_dialog.cpp b/editor/reparent_dialog.cpp index 3305c1642a..ffd4d704d5 100644 --- a/editor/reparent_dialog.cpp +++ b/editor/reparent_dialog.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/reparent_dialog.h b/editor/reparent_dialog.h index c66963e298..b7a3164f4b 100644 --- a/editor/reparent_dialog.h +++ b/editor/reparent_dialog.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/resources_dock.cpp b/editor/resources_dock.cpp index c5f141562a..ddecfd108f 100644 --- a/editor/resources_dock.cpp +++ b/editor/resources_dock.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/resources_dock.h b/editor/resources_dock.h index 15437f981f..f58f8e4c54 100644 --- a/editor/resources_dock.h +++ b/editor/resources_dock.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/run_settings_dialog.cpp b/editor/run_settings_dialog.cpp index 35cbb6c410..4548ae0939 100644 --- a/editor/run_settings_dialog.cpp +++ b/editor/run_settings_dialog.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/run_settings_dialog.h b/editor/run_settings_dialog.h index 98d0368344..b1b4240bf2 100644 --- a/editor/run_settings_dialog.h +++ b/editor/run_settings_dialog.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/scene_tree_dock.cpp b/editor/scene_tree_dock.cpp index 1c6c195719..1a0e67e71a 100644 --- a/editor/scene_tree_dock.cpp +++ b/editor/scene_tree_dock.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/scene_tree_dock.h b/editor/scene_tree_dock.h index b43a6ea9b1..de6b81d44a 100644 --- a/editor/scene_tree_dock.h +++ b/editor/scene_tree_dock.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/scene_tree_editor.cpp b/editor/scene_tree_editor.cpp index 5f0bc8841b..b8bbe2c832 100644 --- a/editor/scene_tree_editor.cpp +++ b/editor/scene_tree_editor.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/scene_tree_editor.h b/editor/scene_tree_editor.h index 22ef492379..ec7115afed 100644 --- a/editor/scene_tree_editor.h +++ b/editor/scene_tree_editor.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/script_create_dialog.cpp b/editor/script_create_dialog.cpp index 47c89419a0..7808cae0cd 100644 --- a/editor/script_create_dialog.cpp +++ b/editor/script_create_dialog.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/script_create_dialog.h b/editor/script_create_dialog.h index a3ad06dbbf..499886facd 100644 --- a/editor/script_create_dialog.h +++ b/editor/script_create_dialog.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/script_editor_debugger.cpp b/editor/script_editor_debugger.cpp index b7a904c255..38cb8d654e 100644 --- a/editor/script_editor_debugger.cpp +++ b/editor/script_editor_debugger.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/script_editor_debugger.h b/editor/script_editor_debugger.h index 74fbbf8f4b..49a4abb6ac 100644 --- a/editor/script_editor_debugger.h +++ b/editor/script_editor_debugger.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/settings_config_dialog.cpp b/editor/settings_config_dialog.cpp index 909ed99da6..8c87857944 100644 --- a/editor/settings_config_dialog.cpp +++ b/editor/settings_config_dialog.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/settings_config_dialog.h b/editor/settings_config_dialog.h index ff6a831fe3..7b6e8862dc 100644 --- a/editor/settings_config_dialog.h +++ b/editor/settings_config_dialog.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/editor/spatial_editor_gizmos.cpp b/editor/spatial_editor_gizmos.cpp index 8a24ed2b2f..136490eb10 100644 --- a/editor/spatial_editor_gizmos.cpp +++ b/editor/spatial_editor_gizmos.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -70,10 +71,6 @@ void EditorSpatialGizmo::Instance::create_instance(Spatial *p_base) { instance = VS::get_singleton()->instance_create2(mesh->get_rid(), p_base->get_world()->get_scenario()); VS::get_singleton()->instance_attach_object_instance_ID(instance, p_base->get_instance_ID()); - if (billboard) - VS::get_singleton()->instance_geometry_set_flag(instance, VS::INSTANCE_FLAG_BILLBOARD, true); - if (unscaled) - VS::get_singleton()->instance_geometry_set_flag(instance, VS::INSTANCE_FLAG_DEPH_SCALE, true); if (skeleton.is_valid()) VS::get_singleton()->instance_attach_skeleton(instance, skeleton); if (extra_margin) @@ -228,7 +225,6 @@ void EditorSpatialGizmo::add_handles(const Vector<Vector3> &p_handles, bool p_bi Array a; a.resize(VS::ARRAY_MAX); a[VS::ARRAY_VERTEX] = p_handles; - print_line("handles?: " + itos(p_handles.size())); PoolVector<Color> colors; { colors.resize(p_handles.size()); @@ -243,7 +239,10 @@ void EditorSpatialGizmo::add_handles(const Vector<Vector3> &p_handles, bool p_bi } a[VS::ARRAY_COLOR] = colors; mesh->add_surface_from_arrays(Mesh::PRIMITIVE_POINTS, a); - mesh->surface_set_material(0, SpatialEditorGizmos::singleton->handle2_material); + if (p_billboard) + mesh->surface_set_material(0, SpatialEditorGizmos::singleton->handle2_material_billboard); + else + mesh->surface_set_material(0, SpatialEditorGizmos::singleton->handle2_material); if (p_billboard) { float md = 0; @@ -390,7 +389,7 @@ bool EditorSpatialGizmo::intersect_ray(const Camera *p_camera, const Point2 &p_p Transform t = spatial_node->get_global_transform(); t.orthonormalize(); if (billboard_handle) { - t.set_look_at(t.origin, t.origin + p_camera->get_transform().basis.get_axis(2), p_camera->get_transform().basis.get_axis(1)); + t.set_look_at(t.origin, t.origin - p_camera->get_transform().basis.get_axis(2), p_camera->get_transform().basis.get_axis(1)); } float min_d = 1e20; @@ -452,7 +451,7 @@ bool EditorSpatialGizmo::intersect_ray(const Camera *p_camera, const Point2 &p_p const Vector3 *vptr = collision_segments.ptr(); Transform t = spatial_node->get_global_transform(); if (billboard_handle) { - t.set_look_at(t.origin, t.origin + p_camera->get_transform().basis.get_axis(2), p_camera->get_transform().basis.get_axis(1)); + t.set_look_at(t.origin, t.origin - p_camera->get_transform().basis.get_axis(2), p_camera->get_transform().basis.get_axis(1)); } Vector3 cp; @@ -504,7 +503,7 @@ bool EditorSpatialGizmo::intersect_ray(const Camera *p_camera, const Point2 &p_p Transform gt = spatial_node->get_global_transform(); if (billboard_handle) { - gt.set_look_at(gt.origin, gt.origin + p_camera->get_transform().basis.get_axis(2), p_camera->get_transform().basis.get_axis(1)); + gt.set_look_at(gt.origin, gt.origin - p_camera->get_transform().basis.get_axis(2), p_camera->get_transform().basis.get_axis(1)); } Transform ai = gt.affine_inverse(); @@ -777,7 +776,7 @@ void LightSpatialGizmo::redraw() { points.push_back(Vector3(b.x, b.y, 0)); } - add_lines(points, SpatialEditorGizmos::singleton->light_material, true); + add_lines(points, SpatialEditorGizmos::singleton->light_material_omni, true); add_collision_segments(points); add_unscaled_billboard(SpatialEditorGizmos::singleton->light_material_omni_icon, 0.05); @@ -2994,24 +2993,24 @@ Ref<SpatialEditorGizmo> SpatialEditorGizmos::get_gizmo(Spatial *p_spatial) { return Ref<SpatialEditorGizmo>(); } -Ref<FixedSpatialMaterial> SpatialEditorGizmos::create_line_material(const Color &p_base_color) { +Ref<SpatialMaterial> SpatialEditorGizmos::create_line_material(const Color &p_base_color) { - Ref<FixedSpatialMaterial> line_material = Ref<FixedSpatialMaterial>(memnew(FixedSpatialMaterial)); - line_material->set_flag(FixedSpatialMaterial::FLAG_UNSHADED, true); + Ref<SpatialMaterial> line_material = Ref<SpatialMaterial>(memnew(SpatialMaterial)); + line_material->set_flag(SpatialMaterial::FLAG_UNSHADED, true); line_material->set_line_width(3.0); - line_material->set_feature(FixedSpatialMaterial::FEATURE_TRANSPARENT, true); - //line_material->set_flag(FixedSpatialMaterial::FLAG_ALBEDO_FROM_VERTEX_COLOR, true); - //->set_flag(FixedSpatialMaterial::FLAG_SRGB_VERTEX_COLOR, true); + line_material->set_feature(SpatialMaterial::FEATURE_TRANSPARENT, true); + //line_material->set_flag(SpatialMaterial::FLAG_ALBEDO_FROM_VERTEX_COLOR, true); + //->set_flag(SpatialMaterial::FLAG_SRGB_VERTEX_COLOR, true); line_material->set_albedo(p_base_color); return line_material; } -Ref<FixedSpatialMaterial> SpatialEditorGizmos::create_solid_material(const Color &p_base_color) { +Ref<SpatialMaterial> SpatialEditorGizmos::create_solid_material(const Color &p_base_color) { - Ref<FixedSpatialMaterial> line_material = Ref<FixedSpatialMaterial>(memnew(FixedSpatialMaterial)); - line_material->set_flag(FixedSpatialMaterial::FLAG_UNSHADED, true); - line_material->set_feature(FixedSpatialMaterial::FEATURE_TRANSPARENT, true); + Ref<SpatialMaterial> line_material = Ref<SpatialMaterial>(memnew(SpatialMaterial)); + line_material->set_flag(SpatialMaterial::FLAG_UNSHADED, true); + line_material->set_feature(SpatialMaterial::FEATURE_TRANSPARENT, true); line_material->set_albedo(p_base_color); return line_material; @@ -3021,58 +3020,65 @@ SpatialEditorGizmos::SpatialEditorGizmos() { singleton = this; - handle_material = Ref<FixedSpatialMaterial>(memnew(FixedSpatialMaterial)); - handle_material->set_flag(FixedSpatialMaterial::FLAG_UNSHADED, true); + handle_material = Ref<SpatialMaterial>(memnew(SpatialMaterial)); + handle_material->set_flag(SpatialMaterial::FLAG_UNSHADED, true); handle_material->set_albedo(Color(0.8, 0.8, 0.8)); + handle_material_billboard = handle_material->duplicate(); + handle_material_billboard->set_billboard_mode(SpatialMaterial::BILLBOARD_ENABLED); - handle2_material = Ref<FixedSpatialMaterial>(memnew(FixedSpatialMaterial)); - handle2_material->set_flag(FixedSpatialMaterial::FLAG_UNSHADED, true); - handle2_material->set_flag(FixedSpatialMaterial::FLAG_USE_POINT_SIZE, true); + handle2_material = Ref<SpatialMaterial>(memnew(SpatialMaterial)); + handle2_material->set_flag(SpatialMaterial::FLAG_UNSHADED, true); + handle2_material->set_flag(SpatialMaterial::FLAG_USE_POINT_SIZE, true); handle_t = SpatialEditor::get_singleton()->get_icon("Editor3DHandle", "EditorIcons"); handle2_material->set_point_size(handle_t->get_width()); - handle2_material->set_texture(FixedSpatialMaterial::TEXTURE_ALBEDO, handle_t); + handle2_material->set_texture(SpatialMaterial::TEXTURE_ALBEDO, handle_t); handle2_material->set_albedo(Color(1, 1, 1)); - handle2_material->set_feature(FixedSpatialMaterial::FEATURE_TRANSPARENT, true); - handle2_material->set_flag(FixedSpatialMaterial::FLAG_ALBEDO_FROM_VERTEX_COLOR, true); - handle2_material->set_flag(FixedSpatialMaterial::FLAG_SRGB_VERTEX_COLOR, true); + handle2_material->set_feature(SpatialMaterial::FEATURE_TRANSPARENT, true); + handle2_material->set_flag(SpatialMaterial::FLAG_ALBEDO_FROM_VERTEX_COLOR, true); + handle2_material->set_flag(SpatialMaterial::FLAG_SRGB_VERTEX_COLOR, true); + handle2_material_billboard = handle2_material->duplicate(); + handle2_material_billboard->set_billboard_mode(SpatialMaterial::BILLBOARD_ENABLED); light_material = create_line_material(Color(1, 1, 0.2)); - - light_material_omni_icon = Ref<FixedSpatialMaterial>(memnew(FixedSpatialMaterial)); - light_material_omni_icon->set_flag(FixedSpatialMaterial::FLAG_UNSHADED, true); - light_material_omni_icon->set_cull_mode(FixedSpatialMaterial::CULL_DISABLED); - light_material_omni_icon->set_depth_draw_mode(FixedSpatialMaterial::DEPTH_DRAW_DISABLED); - light_material_omni_icon->set_feature(FixedSpatialMaterial::FEATURE_TRANSPARENT, true); + light_material_omni = create_line_material(Color(1, 1, 0.2)); + light_material_omni->set_billboard_mode(SpatialMaterial::BILLBOARD_ENABLED); + + light_material_omni_icon = Ref<SpatialMaterial>(memnew(SpatialMaterial)); + light_material_omni_icon->set_flag(SpatialMaterial::FLAG_UNSHADED, true); + light_material_omni_icon->set_cull_mode(SpatialMaterial::CULL_DISABLED); + light_material_omni_icon->set_depth_draw_mode(SpatialMaterial::DEPTH_DRAW_DISABLED); + light_material_omni_icon->set_feature(SpatialMaterial::FEATURE_TRANSPARENT, true); light_material_omni_icon->set_albedo(Color(1, 1, 1, 0.9)); - light_material_omni_icon->set_texture(FixedSpatialMaterial::TEXTURE_ALBEDO, SpatialEditor::get_singleton()->get_icon("GizmoLight", "EditorIcons")); - - light_material_directional_icon = Ref<FixedSpatialMaterial>(memnew(FixedSpatialMaterial)); - light_material_directional_icon->set_flag(FixedSpatialMaterial::FLAG_UNSHADED, true); - light_material_directional_icon->set_cull_mode(FixedSpatialMaterial::CULL_DISABLED); - light_material_directional_icon->set_depth_draw_mode(FixedSpatialMaterial::DEPTH_DRAW_DISABLED); - light_material_directional_icon->set_feature(FixedSpatialMaterial::FEATURE_TRANSPARENT, true); + light_material_omni_icon->set_texture(SpatialMaterial::TEXTURE_ALBEDO, SpatialEditor::get_singleton()->get_icon("GizmoLight", "EditorIcons")); + light_material_omni_icon->set_flag(SpatialMaterial::FLAG_FIXED_SIZE, true); + + light_material_directional_icon = Ref<SpatialMaterial>(memnew(SpatialMaterial)); + light_material_directional_icon->set_flag(SpatialMaterial::FLAG_UNSHADED, true); + light_material_directional_icon->set_cull_mode(SpatialMaterial::CULL_DISABLED); + light_material_directional_icon->set_depth_draw_mode(SpatialMaterial::DEPTH_DRAW_DISABLED); + light_material_directional_icon->set_feature(SpatialMaterial::FEATURE_TRANSPARENT, true); light_material_directional_icon->set_albedo(Color(1, 1, 1, 0.9)); - light_material_directional_icon->set_texture(FixedSpatialMaterial::TEXTURE_ALBEDO, SpatialEditor::get_singleton()->get_icon("GizmoDirectionalLight", "EditorIcons")); + light_material_directional_icon->set_texture(SpatialMaterial::TEXTURE_ALBEDO, SpatialEditor::get_singleton()->get_icon("GizmoDirectionalLight", "EditorIcons")); camera_material = create_line_material(Color(1.0, 0.5, 1.0)); navmesh_edge_material = create_line_material(Color(0.1, 0.8, 1.0)); navmesh_solid_material = create_solid_material(Color(0.1, 0.8, 1.0, 0.4)); - navmesh_edge_material->set_flag(FixedSpatialMaterial::FLAG_ALBEDO_FROM_VERTEX_COLOR, false); - navmesh_edge_material->set_flag(FixedSpatialMaterial::FLAG_SRGB_VERTEX_COLOR, false); - navmesh_solid_material->set_cull_mode(FixedSpatialMaterial::CULL_DISABLED); + navmesh_edge_material->set_flag(SpatialMaterial::FLAG_ALBEDO_FROM_VERTEX_COLOR, false); + navmesh_edge_material->set_flag(SpatialMaterial::FLAG_SRGB_VERTEX_COLOR, false); + navmesh_solid_material->set_cull_mode(SpatialMaterial::CULL_DISABLED); navmesh_edge_material_disabled = create_line_material(Color(1.0, 0.8, 0.1)); navmesh_solid_material_disabled = create_solid_material(Color(1.0, 0.8, 0.1, 0.4)); - navmesh_edge_material_disabled->set_flag(FixedSpatialMaterial::FLAG_ALBEDO_FROM_VERTEX_COLOR, false); - navmesh_edge_material_disabled->set_flag(FixedSpatialMaterial::FLAG_SRGB_VERTEX_COLOR, false); - navmesh_solid_material_disabled->set_cull_mode(FixedSpatialMaterial::CULL_DISABLED); + navmesh_edge_material_disabled->set_flag(SpatialMaterial::FLAG_ALBEDO_FROM_VERTEX_COLOR, false); + navmesh_edge_material_disabled->set_flag(SpatialMaterial::FLAG_SRGB_VERTEX_COLOR, false); + navmesh_solid_material_disabled->set_cull_mode(SpatialMaterial::CULL_DISABLED); skeleton_material = create_line_material(Color(0.6, 1.0, 0.3)); - skeleton_material->set_cull_mode(FixedSpatialMaterial::CULL_DISABLED); - skeleton_material->set_flag(FixedSpatialMaterial::FLAG_UNSHADED, true); - skeleton_material->set_flag(FixedSpatialMaterial::FLAG_ONTOP, true); - skeleton_material->set_depth_draw_mode(FixedSpatialMaterial::DEPTH_DRAW_DISABLED); + skeleton_material->set_cull_mode(SpatialMaterial::CULL_DISABLED); + skeleton_material->set_flag(SpatialMaterial::FLAG_UNSHADED, true); + skeleton_material->set_flag(SpatialMaterial::FLAG_ONTOP, true); + skeleton_material->set_depth_draw_mode(SpatialMaterial::DEPTH_DRAW_DISABLED); //position 3D Shared mesh @@ -3095,11 +3101,11 @@ SpatialEditorGizmos::SpatialEditorGizmos() { cursor_colors.push_back(Color(0.5, 0.5, 1, 0.7)); cursor_colors.push_back(Color(0.5, 0.5, 1, 0.7)); - Ref<FixedSpatialMaterial> mat = memnew(FixedSpatialMaterial); - mat->set_flag(FixedSpatialMaterial::FLAG_UNSHADED, true); - mat->set_flag(FixedSpatialMaterial::FLAG_ALBEDO_FROM_VERTEX_COLOR, true); - mat->set_flag(FixedSpatialMaterial::FLAG_SRGB_VERTEX_COLOR, true); - mat->set_feature(FixedSpatialMaterial::FEATURE_TRANSPARENT, true); + Ref<SpatialMaterial> mat = memnew(SpatialMaterial); + mat->set_flag(SpatialMaterial::FLAG_UNSHADED, true); + mat->set_flag(SpatialMaterial::FLAG_ALBEDO_FROM_VERTEX_COLOR, true); + mat->set_flag(SpatialMaterial::FLAG_SRGB_VERTEX_COLOR, true); + mat->set_feature(SpatialMaterial::FEATURE_TRANSPARENT, true); mat->set_line_width(3); Array d; d.resize(VS::ARRAY_MAX); @@ -3119,11 +3125,11 @@ SpatialEditorGizmos::SpatialEditorGizmos() { cursor_colors.push_back(Color(0.5, 0.5, 0.5, 0.7)); cursor_colors.push_back(Color(0.5, 0.5, 0.5, 0.7)); - Ref<FixedSpatialMaterial> mat = memnew(FixedSpatialMaterial); - mat->set_flag(FixedSpatialMaterial::FLAG_UNSHADED, true); - mat->set_flag(FixedSpatialMaterial::FLAG_ALBEDO_FROM_VERTEX_COLOR, true); - mat->set_flag(FixedSpatialMaterial::FLAG_SRGB_VERTEX_COLOR, true); - mat->set_feature(FixedSpatialMaterial::FEATURE_TRANSPARENT, true); + Ref<SpatialMaterial> mat = memnew(SpatialMaterial); + mat->set_flag(SpatialMaterial::FLAG_UNSHADED, true); + mat->set_flag(SpatialMaterial::FLAG_ALBEDO_FROM_VERTEX_COLOR, true); + mat->set_flag(SpatialMaterial::FLAG_SRGB_VERTEX_COLOR, true); + mat->set_feature(SpatialMaterial::FEATURE_TRANSPARENT, true); mat->set_line_width(3); Array d; d.resize(VS::ARRAY_MAX); @@ -3133,13 +3139,13 @@ SpatialEditorGizmos::SpatialEditorGizmos() { listener_line_mesh->surface_set_material(0, mat); } - sample_player_icon = Ref<FixedSpatialMaterial>(memnew(FixedSpatialMaterial)); - sample_player_icon->set_flag(FixedSpatialMaterial::FLAG_UNSHADED, true); - sample_player_icon->set_cull_mode(FixedSpatialMaterial::CULL_DISABLED); - sample_player_icon->set_depth_draw_mode(FixedSpatialMaterial::DEPTH_DRAW_DISABLED); - sample_player_icon->set_feature(FixedSpatialMaterial::FEATURE_TRANSPARENT, true); + sample_player_icon = Ref<SpatialMaterial>(memnew(SpatialMaterial)); + sample_player_icon->set_flag(SpatialMaterial::FLAG_UNSHADED, true); + sample_player_icon->set_cull_mode(SpatialMaterial::CULL_DISABLED); + sample_player_icon->set_depth_draw_mode(SpatialMaterial::DEPTH_DRAW_DISABLED); + sample_player_icon->set_feature(SpatialMaterial::FEATURE_TRANSPARENT, true); sample_player_icon->set_albedo(Color(1, 1, 1, 0.9)); - sample_player_icon->set_texture(FixedSpatialMaterial::TEXTURE_ALBEDO, SpatialEditor::get_singleton()->get_icon("GizmoSpatialSamplePlayer", "EditorIcons")); + sample_player_icon->set_texture(SpatialMaterial::TEXTURE_ALBEDO, SpatialEditor::get_singleton()->get_icon("GizmoSpatialSamplePlayer", "EditorIcons")); room_material = create_line_material(Color(1.0, 0.6, 0.9)); portal_material = create_line_material(Color(1.0, 0.8, 0.6)); @@ -3152,29 +3158,29 @@ SpatialEditorGizmos::SpatialEditorGizmos() { gi_probe_material_internal = create_line_material(Color(0.5, 0.8, 0.3, 0.1)); joint_material = create_line_material(Color(0.6, 0.8, 1.0)); - stream_player_icon = Ref<FixedSpatialMaterial>(memnew(FixedSpatialMaterial)); - stream_player_icon->set_flag(FixedSpatialMaterial::FLAG_UNSHADED, true); - stream_player_icon->set_cull_mode(FixedSpatialMaterial::CULL_DISABLED); - stream_player_icon->set_depth_draw_mode(FixedSpatialMaterial::DEPTH_DRAW_DISABLED); - stream_player_icon->set_feature(FixedSpatialMaterial::FEATURE_TRANSPARENT, true); + stream_player_icon = Ref<SpatialMaterial>(memnew(SpatialMaterial)); + stream_player_icon->set_flag(SpatialMaterial::FLAG_UNSHADED, true); + stream_player_icon->set_cull_mode(SpatialMaterial::CULL_DISABLED); + stream_player_icon->set_depth_draw_mode(SpatialMaterial::DEPTH_DRAW_DISABLED); + stream_player_icon->set_feature(SpatialMaterial::FEATURE_TRANSPARENT, true); stream_player_icon->set_albedo(Color(1, 1, 1, 0.9)); - stream_player_icon->set_texture(FixedSpatialMaterial::TEXTURE_ALBEDO, SpatialEditor::get_singleton()->get_icon("GizmoSpatialStreamPlayer", "EditorIcons")); + stream_player_icon->set_texture(SpatialMaterial::TEXTURE_ALBEDO, SpatialEditor::get_singleton()->get_icon("GizmoSpatialStreamPlayer", "EditorIcons")); - visibility_notifier_icon = Ref<FixedSpatialMaterial>(memnew(FixedSpatialMaterial)); - visibility_notifier_icon->set_flag(FixedSpatialMaterial::FLAG_UNSHADED, true); - visibility_notifier_icon->set_cull_mode(FixedSpatialMaterial::CULL_DISABLED); - visibility_notifier_icon->set_depth_draw_mode(FixedSpatialMaterial::DEPTH_DRAW_DISABLED); - visibility_notifier_icon->set_feature(FixedSpatialMaterial::FEATURE_TRANSPARENT, true); + visibility_notifier_icon = Ref<SpatialMaterial>(memnew(SpatialMaterial)); + visibility_notifier_icon->set_flag(SpatialMaterial::FLAG_UNSHADED, true); + visibility_notifier_icon->set_cull_mode(SpatialMaterial::CULL_DISABLED); + visibility_notifier_icon->set_depth_draw_mode(SpatialMaterial::DEPTH_DRAW_DISABLED); + visibility_notifier_icon->set_feature(SpatialMaterial::FEATURE_TRANSPARENT, true); visibility_notifier_icon->set_albedo(Color(1, 1, 1, 0.9)); - visibility_notifier_icon->set_texture(FixedSpatialMaterial::TEXTURE_ALBEDO, SpatialEditor::get_singleton()->get_icon("Visible", "EditorIcons")); + visibility_notifier_icon->set_texture(SpatialMaterial::TEXTURE_ALBEDO, SpatialEditor::get_singleton()->get_icon("Visible", "EditorIcons")); - listener_icon = Ref<FixedSpatialMaterial>(memnew(FixedSpatialMaterial)); - listener_icon->set_flag(FixedSpatialMaterial::FLAG_UNSHADED, true); - listener_icon->set_cull_mode(FixedSpatialMaterial::CULL_DISABLED); - listener_icon->set_depth_draw_mode(FixedSpatialMaterial::DEPTH_DRAW_DISABLED); - listener_icon->set_feature(FixedSpatialMaterial::FEATURE_TRANSPARENT, true); + listener_icon = Ref<SpatialMaterial>(memnew(SpatialMaterial)); + listener_icon->set_flag(SpatialMaterial::FLAG_UNSHADED, true); + listener_icon->set_cull_mode(SpatialMaterial::CULL_DISABLED); + listener_icon->set_depth_draw_mode(SpatialMaterial::DEPTH_DRAW_DISABLED); + listener_icon->set_feature(SpatialMaterial::FEATURE_TRANSPARENT, true); listener_icon->set_albedo(Color(1, 1, 1, 0.9)); - listener_icon->set_texture(FixedSpatialMaterial::TEXTURE_ALBEDO, SpatialEditor::get_singleton()->get_icon("GizmoListener", "EditorIcons")); + listener_icon->set_texture(SpatialMaterial::TEXTURE_ALBEDO, SpatialEditor::get_singleton()->get_icon("GizmoListener", "EditorIcons")); { diff --git a/editor/spatial_editor_gizmos.h b/editor/spatial_editor_gizmos.h index 76564c5a99..3aecc8fc02 100644 --- a/editor/spatial_editor_gizmos.h +++ b/editor/spatial_editor_gizmos.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -399,38 +400,41 @@ public: class SpatialEditorGizmos { public: - Ref<FixedSpatialMaterial> create_line_material(const Color &p_base_color); - Ref<FixedSpatialMaterial> create_solid_material(const Color &p_base_color); - Ref<FixedSpatialMaterial> handle2_material; - Ref<FixedSpatialMaterial> handle_material; - Ref<FixedSpatialMaterial> light_material; - Ref<FixedSpatialMaterial> light_material_omni_icon; - Ref<FixedSpatialMaterial> light_material_directional_icon; - Ref<FixedSpatialMaterial> camera_material; - Ref<FixedSpatialMaterial> skeleton_material; - Ref<FixedSpatialMaterial> reflection_probe_material; - Ref<FixedSpatialMaterial> reflection_probe_material_internal; - Ref<FixedSpatialMaterial> gi_probe_material; - Ref<FixedSpatialMaterial> gi_probe_material_internal; - Ref<FixedSpatialMaterial> room_material; - Ref<FixedSpatialMaterial> portal_material; - Ref<FixedSpatialMaterial> raycast_material; - Ref<FixedSpatialMaterial> visibility_notifier_material; - Ref<FixedSpatialMaterial> car_wheel_material; - Ref<FixedSpatialMaterial> joint_material; - - Ref<FixedSpatialMaterial> navmesh_edge_material; - Ref<FixedSpatialMaterial> navmesh_solid_material; - Ref<FixedSpatialMaterial> navmesh_edge_material_disabled; - Ref<FixedSpatialMaterial> navmesh_solid_material_disabled; - - Ref<FixedSpatialMaterial> listener_icon; - - Ref<FixedSpatialMaterial> sample_player_icon; - Ref<FixedSpatialMaterial> stream_player_icon; - Ref<FixedSpatialMaterial> visibility_notifier_icon; - - Ref<FixedSpatialMaterial> shape_material; + Ref<SpatialMaterial> create_line_material(const Color &p_base_color); + Ref<SpatialMaterial> create_solid_material(const Color &p_base_color); + Ref<SpatialMaterial> handle2_material; + Ref<SpatialMaterial> handle2_material_billboard; + Ref<SpatialMaterial> handle_material; + Ref<SpatialMaterial> handle_material_billboard; + Ref<SpatialMaterial> light_material; + Ref<SpatialMaterial> light_material_omni; + Ref<SpatialMaterial> light_material_omni_icon; + Ref<SpatialMaterial> light_material_directional_icon; + Ref<SpatialMaterial> camera_material; + Ref<SpatialMaterial> skeleton_material; + Ref<SpatialMaterial> reflection_probe_material; + Ref<SpatialMaterial> reflection_probe_material_internal; + Ref<SpatialMaterial> gi_probe_material; + Ref<SpatialMaterial> gi_probe_material_internal; + Ref<SpatialMaterial> room_material; + Ref<SpatialMaterial> portal_material; + Ref<SpatialMaterial> raycast_material; + Ref<SpatialMaterial> visibility_notifier_material; + Ref<SpatialMaterial> car_wheel_material; + Ref<SpatialMaterial> joint_material; + + Ref<SpatialMaterial> navmesh_edge_material; + Ref<SpatialMaterial> navmesh_solid_material; + Ref<SpatialMaterial> navmesh_edge_material_disabled; + Ref<SpatialMaterial> navmesh_solid_material_disabled; + + Ref<SpatialMaterial> listener_icon; + + Ref<SpatialMaterial> sample_player_icon; + Ref<SpatialMaterial> stream_player_icon; + Ref<SpatialMaterial> visibility_notifier_icon; + + Ref<SpatialMaterial> shape_material; Ref<Texture> handle_t; Ref<Mesh> pos3d_mesh; diff --git a/editor/translations/ar.po b/editor/translations/ar.po index 2e8e0ab725..48d015ec07 100644 --- a/editor/translations/ar.po +++ b/editor/translations/ar.po @@ -2,13 +2,15 @@ # Copyright (C) 2016-2017 Juan Linietsky, Ariel Manzur and the Godot community # This file is distributed under the same license as the Godot source code. # +# athomield <athomield@hotmail.com>, 2017. # Mohammmad Khashashneh <mohammad.rasmi@gmail.com>, 2016. +# OWs Tetra <owstetra@gmail.com>, 2017. # msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" -"PO-Revision-Date: 2016-08-08 10:20+0000\n" -"Last-Translator: Mohammmad Khashashneh <mohammad.rasmi@gmail.com>\n" +"PO-Revision-Date: 2017-03-29 16:30+0000\n" +"Last-Translator: OWs Tetra <owstetra@gmail.com>\n" "Language-Team: Arabic <https://hosted.weblate.org/projects/godot-engine/" "godot/ar/>\n" "Language: ar\n" @@ -16,7 +18,7 @@ msgstr "" "Content-Transfer-Encoding: 8-bit\n" "Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 " "&& n%100<=10 ? 3 : n%100>=11 ? 4 : 5;\n" -"X-Generator: Weblate 2.8-dev\n" +"X-Generator: Weblate 2.13-dev\n" #: editor/animation_editor.cpp msgid "Disabled" @@ -911,7 +913,7 @@ msgstr "" msgid "Packing" msgstr "" -#: editor/editor_export.cpp +#: editor/editor_export.cpp platform/javascript/export/export.cpp msgid "Template file not found:\n" msgstr "" @@ -3385,10 +3387,12 @@ msgid "Set Handle" msgstr "" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp msgid "Add/Remove Color Ramp Point" msgstr "" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp #: editor/plugins/shader_graph_editor_plugin.cpp msgid "Modify Color Ramp" msgstr "" @@ -3423,6 +3427,10 @@ msgstr "" msgid "Update from Scene" msgstr "" +#: editor/plugins/curve_editor_plugin.cpp +msgid "Modify Curve" +msgstr "" + #: editor/plugins/item_list_editor_plugin.cpp msgid "Item %d" msgstr "" @@ -3724,6 +3732,10 @@ msgid "Node does not contain geometry (faces)." msgstr "" #: editor/plugins/particles_editor_plugin.cpp +msgid "A processor material of type 'ParticlesMaterial' is required." +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp msgid "Faces contain no area!" msgstr "" @@ -3736,11 +3748,11 @@ msgid "Generate AABB" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Mesh" +msgid "Create Emission Points From Mesh" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Node" +msgid "Create Emission Points From Node" msgstr "" #: editor/plugins/particles_editor_plugin.cpp @@ -3752,21 +3764,25 @@ msgid "Create Emitter" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Positions:" +msgid "Emission Points:" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Fill:" +msgid "Surface Points" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Surface" +msgid "Surface Points+Normal (Directed)" msgstr "" #: editor/plugins/particles_editor_plugin.cpp msgid "Volume" msgstr "" +#: editor/plugins/particles_editor_plugin.cpp +msgid "Emission Source: " +msgstr "" + #: editor/plugins/path_2d_editor_plugin.cpp msgid "Remove Point from Curve" msgstr "" @@ -6046,21 +6062,28 @@ msgstr "" #: modules/gdscript/gd_functions.cpp #: modules/visual_script/visual_script_builtin_funcs.cpp +#, fuzzy msgid "Invalid type argument to convert(), use TYPE_* constants." msgstr "" +"صنف إحدى المتغيرات المدخلة (arguments) غير صحيح في ()convert . إستعمل ثابتة " +"_*TYPE" #: modules/gdscript/gd_functions.cpp #: modules/visual_script/visual_script_builtin_funcs.cpp +#, fuzzy msgid "Not enough bytes for decoding bytes, or invalid format." msgstr "" +"لا يوجد ما يكفي من البيتات (bytes) لفك تشيفرة البيتات أو بنيتها (format) غير " +"صحيحة." #: modules/gdscript/gd_functions.cpp msgid "step argument is zero!" -msgstr "" +msgstr "الخطوة (المتغيرة المدخلة/argument) تساوي صفر !" #: modules/gdscript/gd_functions.cpp +#, fuzzy msgid "Not a script with an instance" -msgstr "" +msgstr "الشفرة (script) لا تملك نسخة." #: modules/gdscript/gd_functions.cpp msgid "Not based on a script" @@ -6068,23 +6091,30 @@ msgstr "لا تستند الى شفرة مصدرية" #: modules/gdscript/gd_functions.cpp msgid "Not based on a resource file" -msgstr "" +msgstr "لا تستند على ملف مورد" #: modules/gdscript/gd_functions.cpp msgid "Invalid instance dictionary format (missing @path)" msgstr "" +"instance dictionary format نموذج الشكل القاموسي غير صالح - المسار مفقود" #: modules/gdscript/gd_functions.cpp msgid "Invalid instance dictionary format (can't load script at @path)" msgstr "" +"instance dictionary format نموذج الشكل القاموسي غير صالح - لا يمكن تحميل " +"السكريبت من المسار" #: modules/gdscript/gd_functions.cpp msgid "Invalid instance dictionary format (invalid script at @path)" msgstr "" +"instance dictionary format نموذج الشكل القاموسي غير صالح - السكريبت في " +"المسار غير صالح" #: modules/gdscript/gd_functions.cpp msgid "Invalid instance dictionary (invalid subclasses)" msgstr "" +"instance dictionary نموذج القاموس غير صالح - subclasses الفئة الفرعية غير " +"صالحة" #: modules/visual_script/visual_script.cpp msgid "" @@ -6359,6 +6389,26 @@ msgstr "" msgid "just released" msgstr "" +#: platform/javascript/export/export.cpp +msgid "Run in Browser" +msgstr "" + +#: platform/javascript/export/export.cpp +msgid "Run exported HTML in the system's default browser." +msgstr "" + +#: platform/javascript/export/export.cpp +msgid "Could not write file:\n" +msgstr "" + +#: platform/javascript/export/export.cpp +msgid "Could not read file:\n" +msgstr "" + +#: platform/javascript/export/export.cpp +msgid "Could not open template for export:\n" +msgstr "" + #: platform/uwp/export/export.cpp msgid "" "Couldn't read the certificate file. Are the path and password both correct?" diff --git a/editor/translations/bg.po b/editor/translations/bg.po index 590eb37b73..fe15509a62 100644 --- a/editor/translations/bg.po +++ b/editor/translations/bg.po @@ -912,7 +912,7 @@ msgstr "" msgid "Packing" msgstr "" -#: editor/editor_export.cpp +#: editor/editor_export.cpp platform/javascript/export/export.cpp msgid "Template file not found:\n" msgstr "" @@ -3395,10 +3395,12 @@ msgid "Set Handle" msgstr "" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp msgid "Add/Remove Color Ramp Point" msgstr "" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp #: editor/plugins/shader_graph_editor_plugin.cpp msgid "Modify Color Ramp" msgstr "" @@ -3433,6 +3435,10 @@ msgstr "Внасяне от сцена" msgid "Update from Scene" msgstr "Обновяване от сцена" +#: editor/plugins/curve_editor_plugin.cpp +msgid "Modify Curve" +msgstr "" + #: editor/plugins/item_list_editor_plugin.cpp msgid "Item %d" msgstr "" @@ -3734,6 +3740,10 @@ msgid "Node does not contain geometry (faces)." msgstr "" #: editor/plugins/particles_editor_plugin.cpp +msgid "A processor material of type 'ParticlesMaterial' is required." +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp msgid "Faces contain no area!" msgstr "" @@ -3746,11 +3756,11 @@ msgid "Generate AABB" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Mesh" +msgid "Create Emission Points From Mesh" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Node" +msgid "Create Emission Points From Node" msgstr "" #: editor/plugins/particles_editor_plugin.cpp @@ -3762,21 +3772,25 @@ msgid "Create Emitter" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Positions:" +msgid "Emission Points:" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Fill:" +msgid "Surface Points" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Surface" +msgid "Surface Points+Normal (Directed)" msgstr "" #: editor/plugins/particles_editor_plugin.cpp msgid "Volume" msgstr "" +#: editor/plugins/particles_editor_plugin.cpp +msgid "Emission Source: " +msgstr "" + #: editor/plugins/path_2d_editor_plugin.cpp msgid "Remove Point from Curve" msgstr "" @@ -5384,8 +5398,9 @@ msgid "Remove Resource Remap Option" msgstr "" #: editor/project_settings.cpp +#, fuzzy msgid "Project Settings (godot.cfg)" -msgstr "" +msgstr "Настройки на проекта" #: editor/project_settings.cpp editor/settings_config_dialog.cpp msgid "General" @@ -6394,6 +6409,29 @@ msgstr "" msgid "just released" msgstr "" +#: platform/javascript/export/export.cpp +msgid "Run in Browser" +msgstr "" + +#: platform/javascript/export/export.cpp +msgid "Run exported HTML in the system's default browser." +msgstr "" + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not write file:\n" +msgstr "Неуспешно създаване на папка." + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not read file:\n" +msgstr "Неуспешно създаване на папка." + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not open template for export:\n" +msgstr "Неуспешно създаване на папка." + #: platform/uwp/export/export.cpp msgid "" "Couldn't read the certificate file. Are the path and password both correct?" diff --git a/editor/translations/bn.po b/editor/translations/bn.po index 4ff2f6c459..d4184dfe2b 100644 --- a/editor/translations/bn.po +++ b/editor/translations/bn.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" -"PO-Revision-Date: 2017-01-07 04:19+0000\n" +"PO-Revision-Date: 2017-01-08 13:05+0000\n" "Last-Translator: ABU MD. MARUF SARKER <maruf.webdev@gmail.com>\n" "Language-Team: Bengali <https://hosted.weblate.org/projects/godot-engine/" "godot/bn/>\n" @@ -930,7 +930,7 @@ msgstr "সংরক্ষিত ফাইল:" msgid "Packing" msgstr "প্যাক/গুচ্ছিত করা" -#: editor/editor_export.cpp +#: editor/editor_export.cpp platform/javascript/export/export.cpp msgid "Template file not found:\n" msgstr "" @@ -1106,9 +1106,8 @@ msgid "Constants:" msgstr "ধ্রুবকসমূহ:" #: editor/editor_help.cpp -#, fuzzy msgid "Property Description:" -msgstr "সংক্ষিপ্ত বর্ণনা:" +msgstr "মান/প্রোপার্টির বর্ণনা:" #: editor/editor_help.cpp msgid "Method Description:" @@ -2760,8 +2759,9 @@ msgid "Compress" msgstr "সঙ্কোচন করুন" #: editor/io_plugins/editor_translation_import_plugin.cpp +#, fuzzy msgid "Add to Project (godot.cfg)" -msgstr "প্রকল্পে সংযুক্ত করুন (godot.cfg)" +msgstr "প্রকল্পে সংযুক্ত করুন (engine.cfg)" #: editor/io_plugins/editor_translation_import_plugin.cpp msgid "Import Languages:" @@ -3476,10 +3476,12 @@ msgid "Set Handle" msgstr "হ্যান্ডেল স্থাপন করুন" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp msgid "Add/Remove Color Ramp Point" msgstr "রঙ্গের র্যাম্প বিন্দু সংযোজন/বিয়োজন করুন" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp #: editor/plugins/shader_graph_editor_plugin.cpp msgid "Modify Color Ramp" msgstr "রঙ্গের র্যাম্প পরিবর্তন করুন" @@ -3514,6 +3516,11 @@ msgstr "দৃশ্য হতে ইম্পোর্ট করুন" msgid "Update from Scene" msgstr "দৃশ্য হতে হালনাগাদ করুন" +#: editor/plugins/curve_editor_plugin.cpp +#, fuzzy +msgid "Modify Curve" +msgstr "Curve Map পরিবর্তন করুন" + #: editor/plugins/item_list_editor_plugin.cpp msgid "Item %d" msgstr "বস্তু %d" @@ -3819,6 +3826,10 @@ msgid "Node does not contain geometry (faces)." msgstr "নোডে কোনো জ্যামিতিক আকার নেই (পৃষ্ঠ)।" #: editor/plugins/particles_editor_plugin.cpp +msgid "A processor material of type 'ParticlesMaterial' is required." +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp msgid "Faces contain no area!" msgstr "পৃষ্ঠসমূহ কোনো আকার নেই!" @@ -3831,11 +3842,13 @@ msgid "Generate AABB" msgstr "AABB উৎপন্ন করুন" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Mesh" +#, fuzzy +msgid "Create Emission Points From Mesh" msgstr "Mesh হতে Emitter তৈরি করুন" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Node" +#, fuzzy +msgid "Create Emission Points From Node" msgstr "Node হতে Emitter তৈরি করুন" #: editor/plugins/particles_editor_plugin.cpp @@ -3847,21 +3860,28 @@ msgid "Create Emitter" msgstr "Emitter তৈরি করুন" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Positions:" +#, fuzzy +msgid "Emission Points:" msgstr "Emission-এর স্থানসমূহ:" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Fill:" -msgstr "Emission পূরণ:" +#, fuzzy +msgid "Surface Points" +msgstr "পৃষ্ঠতল %d" #: editor/plugins/particles_editor_plugin.cpp -msgid "Surface" -msgstr "পৃষ্ঠতল" +msgid "Surface Points+Normal (Directed)" +msgstr "" #: editor/plugins/particles_editor_plugin.cpp msgid "Volume" msgstr "আয়তন" +#: editor/plugins/particles_editor_plugin.cpp +#, fuzzy +msgid "Emission Source: " +msgstr "Emission পূরণ:" + #: editor/plugins/path_2d_editor_plugin.cpp msgid "Remove Point from Curve" msgstr "বক্ররেখা হতে বিন্দু অপসারণ করুন" @@ -5186,12 +5206,14 @@ msgid "Invalid project path, the path must exist!" msgstr "অকার্যকর প্রকল্পের পথ, পথটি অবশ্যই বিদ্যমান হতে হবে!" #: editor/project_manager.cpp +#, fuzzy msgid "Invalid project path, godot.cfg must not exist." -msgstr "অকার্যকর প্রকল্পের পথ, godot.cfg অবশ্যই অনুপস্থিত হতে হবে।" +msgstr "অকার্যকর প্রকল্পের পথ, engine.cfg অবশ্যই অনুপস্থিত হতে হবে।" #: editor/project_manager.cpp +#, fuzzy msgid "Invalid project path, godot.cfg must exist." -msgstr "অকার্যকর প্রকল্পের পথ, godot.cfg অবশ্যই উপস্থিত হতে হবে।" +msgstr "অকার্যকর প্রকল্পের পথ, engine.cfg অবশ্যই উপস্থিত হতে হবে।" #: editor/project_manager.cpp msgid "Imported Project" @@ -5202,8 +5224,9 @@ msgid "Invalid project path (changed anything?)." msgstr "অকার্যকর প্রকল্পের পথ (কোনোকিছু পরিবর্তন করেছেন?)।" #: editor/project_manager.cpp +#, fuzzy msgid "Couldn't create godot.cfg in project path." -msgstr "প্রকল্পের পথে godot.cfg তৈরি করা সম্ভব হয়নি।" +msgstr "প্রকল্পের পথে engine.cfg তৈরি করা সম্ভব হয়নি।" #: editor/project_manager.cpp msgid "The following files failed extraction from package:" @@ -5487,8 +5510,9 @@ msgid "Remove Resource Remap Option" msgstr "রিসোর্সের পুনঃ-নকশার সিদ্ধান্ত অপসারণ করুন" #: editor/project_settings.cpp +#, fuzzy msgid "Project Settings (godot.cfg)" -msgstr "প্রকল্পের সেটিংস (godot.cfg)" +msgstr "প্রকল্পের সেটিংস (engine.cfg)" #: editor/project_settings.cpp editor/settings_config_dialog.cpp msgid "General" @@ -6167,9 +6191,8 @@ msgid "Change Notifier Extents" msgstr "Notifier এর সীমা পরিবর্তন করুন" #: editor/spatial_editor_gizmos.cpp -#, fuzzy msgid "Change Probe Extents" -msgstr "Notifier এর সীমা পরিবর্তন করুন" +msgstr "প্রোবের (Probe) পরিব্যাপ্তি পরিবর্তন করুন" #: modules/gdscript/gd_functions.cpp #: modules/visual_script/visual_script_builtin_funcs.cpp @@ -6500,7 +6523,32 @@ msgstr "এইমাত্র চাপিত" msgid "just released" msgstr "এইমাত্র অব্যাহিত/মুক্ত" +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Run in Browser" +msgstr "ব্রাউস" + +#: platform/javascript/export/export.cpp +msgid "Run exported HTML in the system's default browser." +msgstr "" + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not write file:\n" +msgstr "টাইলটি খুঁজে পাওয়া যায়নি:" + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not read file:\n" +msgstr "টাইলটি খুঁজে পাওয়া যায়নি:" + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not open template for export:\n" +msgstr "ফোল্ডার তৈরী করা সম্ভব হয়নি।" + #: platform/uwp/export/export.cpp +#, fuzzy msgid "" "Couldn't read the certificate file. Are the path and password both correct?" msgstr "" @@ -6820,6 +6868,9 @@ msgstr "" "আকার ধারণ করতে পারে। অন্যথায়, এটিকে একটি RenderTarget করুন এবং এর অভ্যন্তরীণ " "দৃশ্যাবলিকে (texture) দৃশ্যমান করতে কোনো নোডে হস্তান্তর করুন।" +#~ msgid "Surface" +#~ msgstr "পৃষ্ঠতল" + #~ msgid "" #~ "A SampleLibrary resource must be created or set in the 'samples' property " #~ "in order for SamplePlayer to play sound." @@ -6864,33 +6915,52 @@ msgstr "" #~ msgid "No exporter for platform '%s' yet." #~ msgstr "'%s' প্ল্যাটফর্মের জন্য এখনো কোনো এক্সপোর্টার নেই।" -#, fuzzy #~ msgid "Create Android keystore" -#~ msgstr "নতুন রিসোর্স তৈরি করুন" +#~ msgstr "অ্যান্ড্রয়েড কীস্টোর (keystore) তৈরি করুন" -#, fuzzy #~ msgid "Full name" -#~ msgstr "গ্রহণযোগ্য নাম" +#~ msgstr "পূর্ণ নাম" + +#~ msgid "Organizational unit" +#~ msgstr "সাংগঠনিক একক (Organizational unit)" -#, fuzzy #~ msgid "Organization" -#~ msgstr "ট্র্যানজিশন/স্থানান্তরণ" +#~ msgstr "সংগঠন" + +#~ msgid "City" +#~ msgstr "শহর" -#, fuzzy #~ msgid "State" -#~ msgstr "অবস্থা:" +#~ msgstr "প্রদেশ/রাজ্য" + +#~ msgid "2 letter country code" +#~ msgstr "২ অক্ষরে দেশের কোড" + +#~ msgid "User alias" +#~ msgstr "ব্যবহারকারীর উপনাম (User alias)" -#, fuzzy #~ msgid "Password" -#~ msgstr "পাসওয়ার্ড:" +#~ msgstr "পাসওয়ার্ড" -#, fuzzy #~ msgid "at least 6 characters" -#~ msgstr "গ্রহনযোগ্য অক্ষরসমূহ:" +#~ msgstr "কমপক্ষে ৬ টি অক্ষর" -#, fuzzy #~ msgid "File name" -#~ msgstr "নতুন নাম:" +#~ msgstr "ফাইলের নাম" + +#~ msgid "Path : (better to save outside of project)" +#~ msgstr "পথ : (প্রকল্পের বাইরে সংরক্ষণ করা ভালো হবে)" + +#~ msgid "" +#~ "Release keystore is not set.\n" +#~ "Do you want to create one?" +#~ msgstr "" +#~ "রিলিসের কীস্টোর (keystore) স্থাপন করা নেই।\n" +#~ "আপনি কি একটি তৈরি করতে চান?" + +#~ msgid "Fill Keystore/Release User and Release Password" +#~ msgstr "" +#~ "কীস্টোর(keystore)/রিলিসের ব্যবহারকারী (User) এবং রিলিসের পাসওয়ার্ড পূরণ করুন" #~ msgid "Include" #~ msgstr "অন্তর্ভুক্ত করুন" diff --git a/editor/translations/ca.po b/editor/translations/ca.po index 2016fd9473..b125b6582f 100644 --- a/editor/translations/ca.po +++ b/editor/translations/ca.po @@ -924,7 +924,7 @@ msgstr "Emmagatzemant Fitxer:" msgid "Packing" msgstr "Compressió" -#: editor/editor_export.cpp +#: editor/editor_export.cpp platform/javascript/export/export.cpp msgid "Template file not found:\n" msgstr "" @@ -3465,10 +3465,12 @@ msgid "Set Handle" msgstr "" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp msgid "Add/Remove Color Ramp Point" msgstr "" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp #: editor/plugins/shader_graph_editor_plugin.cpp msgid "Modify Color Ramp" msgstr "" @@ -3503,6 +3505,10 @@ msgstr "" msgid "Update from Scene" msgstr "" +#: editor/plugins/curve_editor_plugin.cpp +msgid "Modify Curve" +msgstr "" + #: editor/plugins/item_list_editor_plugin.cpp msgid "Item %d" msgstr "" @@ -3805,6 +3811,10 @@ msgid "Node does not contain geometry (faces)." msgstr "" #: editor/plugins/particles_editor_plugin.cpp +msgid "A processor material of type 'ParticlesMaterial' is required." +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp msgid "Faces contain no area!" msgstr "" @@ -3817,11 +3827,11 @@ msgid "Generate AABB" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Mesh" +msgid "Create Emission Points From Mesh" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Node" +msgid "Create Emission Points From Node" msgstr "" #: editor/plugins/particles_editor_plugin.cpp @@ -3833,21 +3843,26 @@ msgid "Create Emitter" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Positions:" +msgid "Emission Points:" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Fill:" -msgstr "" +#, fuzzy +msgid "Surface Points" +msgstr "Superfície %d" #: editor/plugins/particles_editor_plugin.cpp -msgid "Surface" +msgid "Surface Points+Normal (Directed)" msgstr "" #: editor/plugins/particles_editor_plugin.cpp msgid "Volume" msgstr "" +#: editor/plugins/particles_editor_plugin.cpp +msgid "Emission Source: " +msgstr "" + #: editor/plugins/path_2d_editor_plugin.cpp msgid "Remove Point from Curve" msgstr "" @@ -5163,12 +5178,14 @@ msgid "Invalid project path, the path must exist!" msgstr "" #: editor/project_manager.cpp +#, fuzzy msgid "Invalid project path, godot.cfg must not exist." -msgstr "" +msgstr "El camí de Destinació ha d'existir." #: editor/project_manager.cpp +#, fuzzy msgid "Invalid project path, godot.cfg must exist." -msgstr "" +msgstr "El camí de Destinació ha d'existir." #: editor/project_manager.cpp msgid "Imported Project" @@ -5460,8 +5477,9 @@ msgid "Remove Resource Remap Option" msgstr "" #: editor/project_settings.cpp +#, fuzzy msgid "Project Settings (godot.cfg)" -msgstr "Configuració del Projecte (godot.cfg)" +msgstr "Configuració del Projecte (engine.cfg)" #: editor/project_settings.cpp editor/settings_config_dialog.cpp msgid "General" @@ -6484,7 +6502,31 @@ msgstr "premut" msgid "just released" msgstr "alliberat" +#: platform/javascript/export/export.cpp +msgid "Run in Browser" +msgstr "" + +#: platform/javascript/export/export.cpp +msgid "Run exported HTML in the system's default browser." +msgstr "" + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not write file:\n" +msgstr "No s'ha pogut crear la carpeta." + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not read file:\n" +msgstr "No s'ha pogut crear la carpeta." + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not open template for export:\n" +msgstr "No s'ha pogut crear la carpeta." + #: platform/uwp/export/export.cpp +#, fuzzy msgid "" "Couldn't read the certificate file. Are the path and password both correct?" msgstr "" diff --git a/editor/translations/cs.po b/editor/translations/cs.po index 72cee55e6b..08982fd7e4 100644 --- a/editor/translations/cs.po +++ b/editor/translations/cs.po @@ -4,19 +4,20 @@ # # Jan 'spl!te' Kondelík <j.kondelik@centrum.cz>, 2016. # Luděk Novotný <gladosicek@gmail.com>, 2016. +# Martin Novák <maidx@seznam.cz>, 2017. # msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" -"PO-Revision-Date: 2016-08-11 15:01+0000\n" -"Last-Translator: Luděk Novotný <gladosicek@gmail.com>\n" +"PO-Revision-Date: 2017-01-12 15:39+0000\n" +"Last-Translator: Martin Novák <maidx@seznam.cz>\n" "Language-Team: Czech <https://hosted.weblate.org/projects/godot-engine/godot/" "cs/>\n" "Language: cs\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8-bit\n" "Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" -"X-Generator: Weblate 2.8-dev\n" +"X-Generator: Weblate 2.11-dev\n" #: editor/animation_editor.cpp msgid "Disabled" @@ -410,7 +411,7 @@ msgstr "Seznam metod '%s':" #: editor/call_dialog.cpp modules/visual_script/visual_script_editor.cpp msgid "Call" -msgstr "Volat" +msgstr "Zavolat" #: editor/call_dialog.cpp editor/connections_dialog.cpp #: editor/export_template_manager.cpp @@ -847,7 +848,7 @@ msgstr "" #: editor/editor_autoload_settings.cpp msgid "Enable" -msgstr "" +msgstr "Povolit" #: editor/editor_autoload_settings.cpp msgid "Rearrange Autoloads" @@ -867,11 +868,11 @@ msgstr "" #: editor/io_plugins/editor_scene_import_plugin.cpp #: editor/plugins/sample_library_editor_plugin.cpp editor/project_manager.cpp msgid "Name" -msgstr "" +msgstr "Název" #: editor/editor_autoload_settings.cpp msgid "Singleton" -msgstr "" +msgstr "Singleton" #: editor/editor_autoload_settings.cpp msgid "List:" @@ -921,7 +922,7 @@ msgstr "" msgid "Packing" msgstr "" -#: editor/editor_export.cpp +#: editor/editor_export.cpp platform/javascript/export/export.cpp msgid "Template file not found:\n" msgstr "" @@ -1464,15 +1465,15 @@ msgstr "Zpět" #: editor/editor_node.cpp editor/plugins/script_text_editor.cpp #: editor/plugins/shader_editor_plugin.cpp msgid "Redo" -msgstr "" +msgstr "Znovu" #: editor/editor_node.cpp msgid "Run Script" -msgstr "" +msgstr "Spustit skript" #: editor/editor_node.cpp msgid "Project Settings" -msgstr "" +msgstr "Nastavení projektu" #: editor/editor_node.cpp msgid "Revert Scene" @@ -1551,11 +1552,12 @@ msgstr "" #: editor/editor_node.cpp msgid "Play custom scene" -msgstr "" +msgstr "Přehrát vlastní scénu" #: editor/editor_node.cpp +#, fuzzy msgid "Play Custom Scene" -msgstr "" +msgstr "Přehrát vlastní scénu" #: editor/editor_node.cpp msgid "Debug options" @@ -1932,8 +1934,9 @@ msgid "No version.txt found inside templates." msgstr "" #: editor/export_template_manager.cpp +#, fuzzy msgid "Error creating path for templates:\n" -msgstr "" +msgstr "Chyba při vytváření podpisového objektu." #: editor/export_template_manager.cpp msgid "Extracting Export Templates" @@ -2286,7 +2289,7 @@ msgstr "Neplatná velikost fontu." #: editor/io_plugins/editor_font_import_plugin.cpp msgid "Invalid font custom source." -msgstr "" +msgstr "Nevalidní písmo z vlastního zdroje." #: editor/io_plugins/editor_font_import_plugin.cpp #: editor/plugins/theme_editor_plugin.cpp @@ -3400,10 +3403,12 @@ msgid "Set Handle" msgstr "" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp msgid "Add/Remove Color Ramp Point" msgstr "" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp #: editor/plugins/shader_graph_editor_plugin.cpp msgid "Modify Color Ramp" msgstr "" @@ -3438,6 +3443,10 @@ msgstr "" msgid "Update from Scene" msgstr "" +#: editor/plugins/curve_editor_plugin.cpp +msgid "Modify Curve" +msgstr "" + #: editor/plugins/item_list_editor_plugin.cpp msgid "Item %d" msgstr "" @@ -3740,6 +3749,10 @@ msgid "Node does not contain geometry (faces)." msgstr "" #: editor/plugins/particles_editor_plugin.cpp +msgid "A processor material of type 'ParticlesMaterial' is required." +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp msgid "Faces contain no area!" msgstr "" @@ -3752,11 +3765,11 @@ msgid "Generate AABB" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Mesh" +msgid "Create Emission Points From Mesh" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Node" +msgid "Create Emission Points From Node" msgstr "" #: editor/plugins/particles_editor_plugin.cpp @@ -3768,21 +3781,25 @@ msgid "Create Emitter" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Positions:" +msgid "Emission Points:" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Fill:" +msgid "Surface Points" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Surface" +msgid "Surface Points+Normal (Directed)" msgstr "" #: editor/plugins/particles_editor_plugin.cpp msgid "Volume" msgstr "" +#: editor/plugins/particles_editor_plugin.cpp +msgid "Emission Source: " +msgstr "" + #: editor/plugins/path_2d_editor_plugin.cpp msgid "Remove Point from Curve" msgstr "" @@ -5016,8 +5033,9 @@ msgid "Error" msgstr "" #: editor/project_export.cpp +#, fuzzy msgid "Runnable" -msgstr "" +msgstr "Povolit" #: editor/project_export.cpp #, fuzzy @@ -5390,8 +5408,9 @@ msgid "Remove Resource Remap Option" msgstr "" #: editor/project_settings.cpp +#, fuzzy msgid "Project Settings (godot.cfg)" -msgstr "" +msgstr "Nastavení projektu" #: editor/project_settings.cpp editor/settings_config_dialog.cpp msgid "General" @@ -5516,7 +5535,7 @@ msgstr "" #: editor/property_editor.cpp #, fuzzy msgid "Pick a Node" -msgstr "Cesta k uzlu:" +msgstr "Vložit uzly" #: editor/property_editor.cpp msgid "Bit %d, val %d." @@ -5742,8 +5761,9 @@ msgid "Save Branch as Scene" msgstr "" #: editor/scene_tree_dock.cpp +#, fuzzy msgid "Copy Node Path" -msgstr "" +msgstr "Zkopírovat uzly" #: editor/scene_tree_dock.cpp #, fuzzy @@ -6074,15 +6094,16 @@ msgstr "" #: modules/visual_script/visual_script_builtin_funcs.cpp msgid "Invalid type argument to convert(), use TYPE_* constants." msgstr "" +"Neplatný typ argumentu funkce convert(), použijte některou z konstant TYPE_*" #: modules/gdscript/gd_functions.cpp #: modules/visual_script/visual_script_builtin_funcs.cpp msgid "Not enough bytes for decoding bytes, or invalid format." -msgstr "" +msgstr "Nedostatek bajtů pro dekódování bajtů, nebo špatný formát." #: modules/gdscript/gd_functions.cpp msgid "step argument is zero!" -msgstr "" +msgstr "Argument kroku je nula!" #: modules/gdscript/gd_functions.cpp msgid "Not a script with an instance" @@ -6219,20 +6240,27 @@ msgid "Add Node" msgstr "Přidat uzel" #: modules/visual_script/visual_script_editor.cpp +#, fuzzy msgid "Hold Meta to drop a Getter. Hold Shift to drop a generic signature." msgstr "" +"Podržte Meta k uvolnění getteru. Podržte Shift k uvolnění generického " +"podpisu." #: modules/visual_script/visual_script_editor.cpp +#, fuzzy msgid "Hold Ctrl to drop a Getter. Hold Shift to drop a generic signature." msgstr "" +"Podržte Ctrl k uvolnění getteru. Podržte Shift k uvolnění generického " +"podpisu." #: modules/visual_script/visual_script_editor.cpp msgid "Hold Meta to drop a simple reference to the node." -msgstr "" +msgstr "Podržte Meta k uvolnění jednoduché reference na uzel." #: modules/visual_script/visual_script_editor.cpp +#, fuzzy msgid "Hold Ctrl to drop a simple reference to the node." -msgstr "" +msgstr "Podržte Ctrl k uvolnění jednoduché reference na uzel." #: modules/visual_script/visual_script_editor.cpp msgid "Hold Meta to drop a Variable Setter." @@ -6243,13 +6271,12 @@ msgid "Hold Ctrl to drop a Variable Setter." msgstr "" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Add Preload Node" -msgstr "Přidat uzel" +msgstr "Přidat předem načtený uzel" #: modules/visual_script/visual_script_editor.cpp msgid "Add Node(s) From Tree" -msgstr "Přidat uzel (uzly) ze stromu" +msgstr "Přidat uzel(y) ze stromu" #: modules/visual_script/visual_script_editor.cpp msgid "Add Getter Property" @@ -6266,7 +6293,7 @@ msgstr "Přechod" #: modules/visual_script/visual_script_editor.cpp msgid "Sequence" -msgstr "" +msgstr "Sekvence" #: modules/visual_script/visual_script_editor.cpp msgid "Switch" @@ -6274,16 +6301,15 @@ msgstr "" #: modules/visual_script/visual_script_editor.cpp msgid "Iterator" -msgstr "" +msgstr "Iterátor" #: modules/visual_script/visual_script_editor.cpp msgid "While" msgstr "" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Return" -msgstr "Vrátit:" +msgstr "Vrátit" #: modules/visual_script/visual_script_editor.cpp msgid "Get" @@ -6324,28 +6350,27 @@ msgstr "Vyhledat typ uzlu" #: modules/visual_script/visual_script_editor.cpp msgid "Copy Nodes" -msgstr "" +msgstr "Zkopírovat uzly" #: modules/visual_script/visual_script_editor.cpp msgid "Cut Nodes" -msgstr "" +msgstr "Vyjmout uzly" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Paste Nodes" -msgstr "Cesta k uzlu:" +msgstr "Vložit uzly" #: modules/visual_script/visual_script_flow_control.cpp msgid "Input type not iterable: " -msgstr "" +msgstr "Vstupním typem nelze iterovat: " #: modules/visual_script/visual_script_flow_control.cpp msgid "Iterator became invalid" -msgstr "" +msgstr "Iterátor se stal neplatným" #: modules/visual_script/visual_script_flow_control.cpp msgid "Iterator became invalid: " -msgstr "" +msgstr "Iterátor se stal neplatným: " #: modules/visual_script/visual_script_func_nodes.cpp msgid "Invalid index property name." @@ -6388,99 +6413,133 @@ msgid "" "Invalid return value from _step(), must be integer (seq out), or string " "(error)." msgstr "" +"Neplatná návratová hodnota z funkce _step(). Musí být celé číslo (výstupní " +"posloupnost), nebo řetězec (chyba)." #: modules/visual_script/visual_script_nodes.cpp msgid "just pressed" -msgstr "" +msgstr "právě stisknuto" #: modules/visual_script/visual_script_nodes.cpp msgid "just released" +msgstr "právě uvolněno" + +#: platform/javascript/export/export.cpp +msgid "Run in Browser" msgstr "" +#: platform/javascript/export/export.cpp +msgid "Run exported HTML in the system's default browser." +msgstr "" + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not write file:\n" +msgstr "Nelze vytvořit složku." + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not read file:\n" +msgstr "Nelze vytvořit složku." + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not open template for export:\n" +msgstr "Nelze vytvořit složku." + #: platform/uwp/export/export.cpp +#, fuzzy msgid "" "Couldn't read the certificate file. Are the path and password both correct?" msgstr "" +"Nepodařilo se přečíst soubor certifikátu. Jsou cesta a heslo obě korektní?" #: platform/uwp/export/export.cpp msgid "Error creating the signature object." -msgstr "" +msgstr "Chyba při vytváření podpisového objektu." #: platform/uwp/export/export.cpp msgid "Error creating the package signature." -msgstr "" +msgstr "Chyba při vytváření podpisu balíčku." #: platform/uwp/export/export.cpp +#, fuzzy msgid "" "No export templates found.\n" "Download and install export templates." msgstr "" +"Nebyly nalezeny žádné exportní šablony.\n" +"Stáhněte a nainstalujte exportní šablony." #: platform/uwp/export/export.cpp msgid "Custom debug package not found." -msgstr "" +msgstr "Vlastní ladící balíček nebyl nalezen." #: platform/uwp/export/export.cpp +#, fuzzy msgid "Custom release package not found." -msgstr "" +msgstr "Vlastní balíček k uveřejnění nebyl nalezen." #: platform/uwp/export/export.cpp -#, fuzzy msgid "Invalid unique name." -msgstr "Neplatný název." +msgstr "Neplatný unikátní název." #: platform/uwp/export/export.cpp -#, fuzzy msgid "Invalid product GUID." -msgstr "Neplatná velikost fontu." +msgstr "Neplatné GUID produktu." #: platform/uwp/export/export.cpp msgid "Invalid publisher GUID." -msgstr "" +msgstr "Neplatné GUID vydavatele." #: platform/uwp/export/export.cpp msgid "Invalid background color." -msgstr "" +msgstr "Neplatná barva pozadí." #: platform/uwp/export/export.cpp msgid "Invalid Store Logo image dimensions (should be 50x50)." -msgstr "" +msgstr "Neplatné rozměry Store Logo obrázku (měly by být 50x50)." #: platform/uwp/export/export.cpp msgid "Invalid square 44x44 logo image dimensions (should be 44x44)." -msgstr "" +msgstr "Neplatné rozměry Square 44x44 Logo obrázku (měly by být 44x44)." #: platform/uwp/export/export.cpp msgid "Invalid square 71x71 logo image dimensions (should be 71x71)." -msgstr "" +msgstr "Neplatné rozměry Square 71x71 Logo obrázku (měly by být 71x71)." #: platform/uwp/export/export.cpp msgid "Invalid square 150x150 logo image dimensions (should be 150x150)." -msgstr "" +msgstr "Neplatné rozměry Square 150x150 Logo obrázku (měly by být 150x150)." #: platform/uwp/export/export.cpp msgid "Invalid square 310x310 logo image dimensions (should be 310x310)." -msgstr "" +msgstr "Neplatné rozměry Square 310x310 Logo obrázku (měly by být 310x310)." #: platform/uwp/export/export.cpp msgid "Invalid wide 310x150 logo image dimensions (should be 310x150)." -msgstr "" +msgstr "Neplatné rozměry Square 310x150 Logo obrázku (měly by být 310x150)." #: platform/uwp/export/export.cpp msgid "Invalid splash screen image dimensions (should be 620x300)." -msgstr "" +msgstr "Neplatné rozměry obrázku uvítací obrazovky (měly by být 620x300)." #: scene/2d/animated_sprite.cpp msgid "" "A SpriteFrames resource must be created or set in the 'Frames' property in " "order for AnimatedSprite to display frames." msgstr "" +"Aby AnimatedSprite mohl zobrazovat snímky, zdroj SpriteFrames musí být " +"vytvořen nebo nastaven v vlastnosti 'Frames'." #: scene/2d/canvas_modulate.cpp msgid "" "Only one visible CanvasModulate is allowed per scene (or set of instanced " "scenes). The first created one will work, while the rest will be ignored." msgstr "" +"Je povolená jen jedna viditelná CanvasModulate na scénu (nebo množinu " +"instancovaných scén). První vytvořená bude fungovat, ostatní budou " +"ignorovány." #: scene/2d/collision_polygon_2d.cpp msgid "" @@ -6509,10 +6568,11 @@ msgstr "" "jejich tvaru." #: scene/2d/collision_shape_2d.cpp +#, fuzzy msgid "" "A shape must be provided for CollisionShape2D to function. Please create a " "shape resource for it!" -msgstr "" +msgstr "CollisionShape2D musí obsahovat tvar. Prosím vytvořte zdrojový tvar." #: scene/2d/light_2d.cpp msgid "" diff --git a/editor/translations/da.po b/editor/translations/da.po index 1cbf5ad454..49b26f6ed2 100644 --- a/editor/translations/da.po +++ b/editor/translations/da.po @@ -916,7 +916,7 @@ msgstr "" msgid "Packing" msgstr "" -#: editor/editor_export.cpp +#: editor/editor_export.cpp platform/javascript/export/export.cpp msgid "Template file not found:\n" msgstr "" @@ -3394,10 +3394,12 @@ msgid "Set Handle" msgstr "" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp msgid "Add/Remove Color Ramp Point" msgstr "" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp #: editor/plugins/shader_graph_editor_plugin.cpp msgid "Modify Color Ramp" msgstr "" @@ -3432,6 +3434,10 @@ msgstr "" msgid "Update from Scene" msgstr "" +#: editor/plugins/curve_editor_plugin.cpp +msgid "Modify Curve" +msgstr "" + #: editor/plugins/item_list_editor_plugin.cpp msgid "Item %d" msgstr "" @@ -3734,6 +3740,10 @@ msgid "Node does not contain geometry (faces)." msgstr "" #: editor/plugins/particles_editor_plugin.cpp +msgid "A processor material of type 'ParticlesMaterial' is required." +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp msgid "Faces contain no area!" msgstr "" @@ -3746,11 +3756,11 @@ msgid "Generate AABB" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Mesh" +msgid "Create Emission Points From Mesh" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Node" +msgid "Create Emission Points From Node" msgstr "" #: editor/plugins/particles_editor_plugin.cpp @@ -3762,21 +3772,25 @@ msgid "Create Emitter" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Positions:" +msgid "Emission Points:" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Fill:" +msgid "Surface Points" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Surface" +msgid "Surface Points+Normal (Directed)" msgstr "" #: editor/plugins/particles_editor_plugin.cpp msgid "Volume" msgstr "" +#: editor/plugins/particles_editor_plugin.cpp +msgid "Emission Source: " +msgstr "" + #: editor/plugins/path_2d_editor_plugin.cpp msgid "Remove Point from Curve" msgstr "" @@ -6390,6 +6404,29 @@ msgstr "" msgid "just released" msgstr "" +#: platform/javascript/export/export.cpp +msgid "Run in Browser" +msgstr "" + +#: platform/javascript/export/export.cpp +msgid "Run exported HTML in the system's default browser." +msgstr "" + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not write file:\n" +msgstr "Kunne ikke oprette mappe." + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not read file:\n" +msgstr "Kunne ikke oprette mappe." + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not open template for export:\n" +msgstr "Kunne ikke oprette mappe." + #: platform/uwp/export/export.cpp msgid "" "Couldn't read the certificate file. Are the path and password both correct?" diff --git a/editor/translations/de.po b/editor/translations/de.po index 678cc1e347..ac615e885b 100644 --- a/editor/translations/de.po +++ b/editor/translations/de.po @@ -6,15 +6,17 @@ # Andreas Esau <andreasesau@gmail.com>, 2016. # Andreas Haas <liu.gam3@gmail.com>, 2016. # Andreas Hirschauer <andreas@hirschauer-it.de>, 2016. -# Christian Fisch <christian.fiesel@gmail.com>, 2016. +# Christian Fisch <christian.fiesel@gmail.com>, 2016-2017. # danjo <atze@libra.uberspace.de>, 2016. +# Eurocloud KnowHow <tobias.kloy@werde-volunteer.info>, 2017. # hyperglow <greensoma@web.de>, 2016. # Jan Groß <jan@grossit.de>, 2016. -# Oliver Ruehl <oliver@ruehldesign.co>, 2016. +# Kim <github@aggsol.de>, 2017. +# Oliver Ruehl <oliver@ruehldesign.co>, 2016-2017. # Paul-Vincent Roll <paviro@me.com>, 2016. # Peter Friedland <peter_friedland@gmx.de>, 2016. # No need for a name <endoplasmatik@gmx.net>, 2016. -# So Wieso <sowieso@dukun.de>, 2016. +# So Wieso <sowieso@dukun.de>, 2016-2017. # Timo Schwarzer <account@timoschwarzer.com>, 2016. # viernullvier <hannes.breul+github@gmail.com>, 2016. # @@ -22,8 +24,8 @@ msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2016-12-10 04:27+0000\n" -"Last-Translator: So Wieso <sowieso@dukun.de>\n" +"PO-Revision-Date: 2017-03-25 22:20+0000\n" +"Last-Translator: Eurocloud KnowHow <tobias.kloy@werde-volunteer.info>\n" "Language-Team: German <https://hosted.weblate.org/projects/godot-engine/" "godot/de/>\n" "Language: de\n" @@ -31,7 +33,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 2.10-dev\n" +"X-Generator: Weblate 2.12\n" #: editor/animation_editor.cpp msgid "Disabled" @@ -945,7 +947,7 @@ msgstr "Speichere Datei:" msgid "Packing" msgstr "Packe" -#: editor/editor_export.cpp +#: editor/editor_export.cpp platform/javascript/export/export.cpp msgid "Template file not found:\n" msgstr "" @@ -1121,13 +1123,12 @@ msgid "Constants:" msgstr "Konstanten:" #: editor/editor_help.cpp -#, fuzzy msgid "Property Description:" -msgstr "Kurze Beschreibung:" +msgstr "Eigenschaft-Beschreibung:" #: editor/editor_help.cpp msgid "Method Description:" -msgstr "Methoden Beschreibung:" +msgstr "Methoden-Beschreibung:" #: editor/editor_help.cpp msgid "Search Text" @@ -1568,7 +1569,7 @@ msgstr "Projekt abspielen." #: editor/editor_node.cpp editor/plugins/sample_library_editor_plugin.cpp msgid "Play" -msgstr "Abspielen" +msgstr "Starten" #: editor/editor_node.cpp msgid "Pause the scene" @@ -2776,8 +2777,9 @@ msgid "Compress" msgstr "Komprimieren" #: editor/io_plugins/editor_translation_import_plugin.cpp +#, fuzzy msgid "Add to Project (godot.cfg)" -msgstr "Zu Projekt hinzufügen (godot.cfg)" +msgstr "Zu Projekt hinzufügen (engine.cfg)" #: editor/io_plugins/editor_translation_import_plugin.cpp msgid "Import Languages:" @@ -3448,12 +3450,11 @@ msgid "OK" msgstr "OK" #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "" "Drag & drop + Shift : Add node as sibling\n" "Drag & drop + Alt : Change node type" msgstr "" -"Ziehen + Umschalt: Node in gleicher Hierarchie einfügen\n" +"Ziehen + Umschalt: Node auf gleicher Ebene einfügen\n" "Ziehen + Alt: Nodetyp ändern" #: editor/plugins/collision_polygon_2d_editor_plugin.cpp @@ -3496,10 +3497,12 @@ msgid "Set Handle" msgstr "Wähle Griff" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp msgid "Add/Remove Color Ramp Point" msgstr "Farbverlaufspunkt hinzufügen/entfernen" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp #: editor/plugins/shader_graph_editor_plugin.cpp msgid "Modify Color Ramp" msgstr "Farbverlauf anpassen" @@ -3534,6 +3537,11 @@ msgstr "Aus Szene importieren" msgid "Update from Scene" msgstr "Aus Szene aktualisieren" +#: editor/plugins/curve_editor_plugin.cpp +#, fuzzy +msgid "Modify Curve" +msgstr "Verändere Curve-Map" + #: editor/plugins/item_list_editor_plugin.cpp msgid "Item %d" msgstr "Element %d" @@ -3840,6 +3848,10 @@ msgid "Node does not contain geometry (faces)." msgstr "Knoten enthält keine Geometrie (Flächen)." #: editor/plugins/particles_editor_plugin.cpp +msgid "A processor material of type 'ParticlesMaterial' is required." +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp msgid "Faces contain no area!" msgstr "Flächen enthalten keinen Bereich!" @@ -3852,11 +3864,13 @@ msgid "Generate AABB" msgstr "Erzeuge AABB" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Mesh" +#, fuzzy +msgid "Create Emission Points From Mesh" msgstr "Erzeuge Emittent aus Mesh" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Node" +#, fuzzy +msgid "Create Emission Points From Node" msgstr "Erzeuge Emittent aus Node" #: editor/plugins/particles_editor_plugin.cpp @@ -3868,21 +3882,28 @@ msgid "Create Emitter" msgstr "Erzeuge Emittent" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Positions:" +#, fuzzy +msgid "Emission Points:" msgstr "Emissionsorte:" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Fill:" -msgstr "Emissionsfüllung:" +#, fuzzy +msgid "Surface Points" +msgstr "Oberfläche %d" #: editor/plugins/particles_editor_plugin.cpp -msgid "Surface" -msgstr "Oberfläche" +msgid "Surface Points+Normal (Directed)" +msgstr "" #: editor/plugins/particles_editor_plugin.cpp msgid "Volume" msgstr "Volumen" +#: editor/plugins/particles_editor_plugin.cpp +#, fuzzy +msgid "Emission Source: " +msgstr "Emissionsfüllung:" + #: editor/plugins/path_2d_editor_plugin.cpp msgid "Remove Point from Curve" msgstr "Punkt von Kurve entfernen" @@ -5210,12 +5231,14 @@ msgid "Invalid project path, the path must exist!" msgstr "Ungültiger Projektpfad, der Pfad muss existieren!" #: editor/project_manager.cpp +#, fuzzy msgid "Invalid project path, godot.cfg must not exist." -msgstr "Ungültiger Projektpfad, godot.cfg darf nicht existieren." +msgstr "Ungültiger Projektpfad, engine.cfg darf nicht existieren." #: editor/project_manager.cpp +#, fuzzy msgid "Invalid project path, godot.cfg must exist." -msgstr "Ungültiger Projektpfad, godot.cfg muss existieren." +msgstr "Ungültiger Projektpfad, engine.cfg muss existieren." #: editor/project_manager.cpp msgid "Imported Project" @@ -5226,8 +5249,9 @@ msgid "Invalid project path (changed anything?)." msgstr "Ungültiger Projektpfad (etwas geändert?)." #: editor/project_manager.cpp +#, fuzzy msgid "Couldn't create godot.cfg in project path." -msgstr "Konnte godot.cfg in Projektpfad nicht erzeugen." +msgstr "Konnte engine.cfg in Projektpfad nicht erzeugen." #: editor/project_manager.cpp msgid "The following files failed extraction from package:" @@ -5511,8 +5535,9 @@ msgid "Remove Resource Remap Option" msgstr "Ressourcen-Remap-Option entfernen" #: editor/project_settings.cpp +#, fuzzy msgid "Project Settings (godot.cfg)" -msgstr "Projekteinstellungen (godot.cfg)" +msgstr "Projekteinstellungen (engine.cfg)" #: editor/project_settings.cpp editor/settings_config_dialog.cpp msgid "General" @@ -6203,7 +6228,7 @@ msgstr "Ändere Ausmaße des Benachrichtigers" #: modules/visual_script/visual_script_builtin_funcs.cpp msgid "Invalid type argument to convert(), use TYPE_* constants." msgstr "" -"Ungültiger Parametertyp in convert()-Aufruf, TYPE_*-Konstanten benötigt." +"Ungültiger Argument-Typ in convert()-Aufruf, TYPE_*-Konstanten benötigt." #: modules/gdscript/gd_functions.cpp #: modules/visual_script/visual_script_builtin_funcs.cpp @@ -6534,7 +6559,32 @@ msgstr "gerade gedrückt" msgid "just released" msgstr "gerade losgelassen" +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Run in Browser" +msgstr "Durchstöbern" + +#: platform/javascript/export/export.cpp +msgid "Run exported HTML in the system's default browser." +msgstr "" + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not write file:\n" +msgstr "Konnte Kachel nicht finden:" + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not read file:\n" +msgstr "Konnte Kachel nicht finden:" + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not open template for export:\n" +msgstr "Ordner konnte nicht erstellt werden." + #: platform/uwp/export/export.cpp +#, fuzzy msgid "" "Couldn't read the certificate file. Are the path and password both correct?" msgstr "" @@ -6870,6 +6920,9 @@ msgstr "" "Eigenschaft ‚Render Target‘ des Viewports aktiviert und seine Textur " "irgendeinem Node zum Anzeigen zugewiesen werden." +#~ msgid "Surface" +#~ msgstr "Oberfläche" + #~ msgid "" #~ "A SampleLibrary resource must be created or set in the 'samples' property " #~ "in order for SamplePlayer to play sound." @@ -6914,33 +6967,51 @@ msgstr "" #~ msgid "No exporter for platform '%s' yet." #~ msgstr "Kein Exporter für Plattform ‚%s‘ verfügbar." -#, fuzzy #~ msgid "Create Android keystore" -#~ msgstr "Erstelle neue Ressource" +#~ msgstr "Erzeuge Android-Schlüssel" -#, fuzzy #~ msgid "Full name" -#~ msgstr "Gültiger Name" +#~ msgstr "Vollständiger Name" + +#~ msgid "Organizational unit" +#~ msgstr "Organisatorische Einheit" -#, fuzzy #~ msgid "Organization" -#~ msgstr "Übergang" +#~ msgstr "Organisation" + +#~ msgid "City" +#~ msgstr "Stadt" -#, fuzzy #~ msgid "State" -#~ msgstr "Status:" +#~ msgstr "Status" + +#~ msgid "2 letter country code" +#~ msgstr "2-Buchstaben-Ländercode" + +#~ msgid "User alias" +#~ msgstr "Nutzer-Alias" -#, fuzzy #~ msgid "Password" -#~ msgstr "Passwort:" +#~ msgstr "Passwort" -#, fuzzy #~ msgid "at least 6 characters" -#~ msgstr "Gültige Zeichen:" +#~ msgstr "Mindestens 6 Zeichen" -#, fuzzy #~ msgid "File name" -#~ msgstr "Neuer Name:" +#~ msgstr "Dateiname" + +#~ msgid "Path : (better to save outside of project)" +#~ msgstr "Pfad: (besser außerhalb des Projektordners speichern)" + +#~ msgid "" +#~ "Release keystore is not set.\n" +#~ "Do you want to create one?" +#~ msgstr "" +#~ "Release-Schlüsselspeicher wurde nicht gewählt.\n" +#~ "Soll einer erstellt werden?" + +#~ msgid "Fill Keystore/Release User and Release Password" +#~ msgstr "Schlüsselspeicher, Nutzer und Passwort für Release eingeben" #~ msgid "Include" #~ msgstr "Einbeziehen" diff --git a/editor/translations/de_CH.po b/editor/translations/de_CH.po index a057f5fbe9..ae6d433e54 100644 --- a/editor/translations/de_CH.po +++ b/editor/translations/de_CH.po @@ -911,7 +911,7 @@ msgstr "" msgid "Packing" msgstr "" -#: editor/editor_export.cpp +#: editor/editor_export.cpp platform/javascript/export/export.cpp msgid "Template file not found:\n" msgstr "" @@ -2685,8 +2685,9 @@ msgid "Compress" msgstr "" #: editor/io_plugins/editor_translation_import_plugin.cpp +#, fuzzy msgid "Add to Project (godot.cfg)" -msgstr "Zum Projekt hinzufügen (godot.cfg)" +msgstr "Zum Projekt hinzufügen (engine.cfg)" #: editor/io_plugins/editor_translation_import_plugin.cpp msgid "Import Languages:" @@ -3406,10 +3407,12 @@ msgid "Set Handle" msgstr "" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp msgid "Add/Remove Color Ramp Point" msgstr "" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp #: editor/plugins/shader_graph_editor_plugin.cpp msgid "Modify Color Ramp" msgstr "" @@ -3444,6 +3447,10 @@ msgstr "" msgid "Update from Scene" msgstr "" +#: editor/plugins/curve_editor_plugin.cpp +msgid "Modify Curve" +msgstr "" + #: editor/plugins/item_list_editor_plugin.cpp msgid "Item %d" msgstr "" @@ -3747,6 +3754,10 @@ msgid "Node does not contain geometry (faces)." msgstr "Node enthält keine Geometrie (Flächen)." #: editor/plugins/particles_editor_plugin.cpp +msgid "A processor material of type 'ParticlesMaterial' is required." +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp msgid "Faces contain no area!" msgstr "Flächen enthalten keinen Bereich!" @@ -3759,11 +3770,11 @@ msgid "Generate AABB" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Mesh" +msgid "Create Emission Points From Mesh" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Node" +msgid "Create Emission Points From Node" msgstr "" #: editor/plugins/particles_editor_plugin.cpp @@ -3775,21 +3786,27 @@ msgid "Create Emitter" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Positions:" -msgstr "" +#, fuzzy +msgid "Emission Points:" +msgstr "Emissions-Maske setzen" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Fill:" -msgstr "" +#, fuzzy +msgid "Surface Points" +msgstr "Oberfläche %d" #: editor/plugins/particles_editor_plugin.cpp -msgid "Surface" -msgstr "Oberfläche" +msgid "Surface Points+Normal (Directed)" +msgstr "" #: editor/plugins/particles_editor_plugin.cpp msgid "Volume" msgstr "" +#: editor/plugins/particles_editor_plugin.cpp +msgid "Emission Source: " +msgstr "" + #: editor/plugins/path_2d_editor_plugin.cpp msgid "Remove Point from Curve" msgstr "" @@ -5098,12 +5115,14 @@ msgid "Invalid project path, the path must exist!" msgstr "Ungültiger Projektpfad, Pfad existiert nicht!" #: editor/project_manager.cpp +#, fuzzy msgid "Invalid project path, godot.cfg must not exist." -msgstr "Ungültiger Projektpfad, godot.cfg vorhanden!" +msgstr "Ungültiger Projektpfad, engine.cfg vorhanden!" #: editor/project_manager.cpp +#, fuzzy msgid "Invalid project path, godot.cfg must exist." -msgstr "Ungültiger Projektpfad, godot.cfg nicht vorhanden!" +msgstr "Ungültiger Projektpfad, engine.cfg nicht vorhanden!" #: editor/project_manager.cpp msgid "Imported Project" @@ -5114,8 +5133,9 @@ msgid "Invalid project path (changed anything?)." msgstr "Ungültiger Projektpfad, (wurde was geändert?)!" #: editor/project_manager.cpp +#, fuzzy msgid "Couldn't create godot.cfg in project path." -msgstr "Die godot.cfg kann im Projektverzeichnis nicht erstellt werden." +msgstr "Die engine.cfg kann im Projektverzeichnis nicht erstellt werden." #: editor/project_manager.cpp msgid "The following files failed extraction from package:" @@ -5395,8 +5415,9 @@ msgid "Remove Resource Remap Option" msgstr "" #: editor/project_settings.cpp +#, fuzzy msgid "Project Settings (godot.cfg)" -msgstr "" +msgstr "Projekteinstellungen" #: editor/project_settings.cpp editor/settings_config_dialog.cpp msgid "General" @@ -6403,6 +6424,26 @@ msgstr "" msgid "just released" msgstr "" +#: platform/javascript/export/export.cpp +msgid "Run in Browser" +msgstr "" + +#: platform/javascript/export/export.cpp +msgid "Run exported HTML in the system's default browser." +msgstr "" + +#: platform/javascript/export/export.cpp +msgid "Could not write file:\n" +msgstr "" + +#: platform/javascript/export/export.cpp +msgid "Could not read file:\n" +msgstr "" + +#: platform/javascript/export/export.cpp +msgid "Could not open template for export:\n" +msgstr "" + #: platform/uwp/export/export.cpp msgid "" "Couldn't read the certificate file. Are the path and password both correct?" @@ -6694,6 +6735,9 @@ msgid "" "texture to some node for display." msgstr "" +#~ msgid "Surface" +#~ msgstr "Oberfläche" + #~ msgid "" #~ "A SampleLibrary resource must be created or set in the 'samples' property " #~ "in order for SamplePlayer to play sound." diff --git a/editor/translations/editor.pot b/editor/translations/editor.pot index 985b48efc2..276662dbed 100644 --- a/editor/translations/editor.pot +++ b/editor/translations/editor.pot @@ -904,7 +904,7 @@ msgstr "" msgid "Packing" msgstr "" -#: editor/editor_export.cpp +#: editor/editor_export.cpp platform/javascript/export/export.cpp msgid "Template file not found:\n" msgstr "" @@ -3376,10 +3376,12 @@ msgid "Set Handle" msgstr "" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp msgid "Add/Remove Color Ramp Point" msgstr "" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp #: editor/plugins/shader_graph_editor_plugin.cpp msgid "Modify Color Ramp" msgstr "" @@ -3414,6 +3416,10 @@ msgstr "" msgid "Update from Scene" msgstr "" +#: editor/plugins/curve_editor_plugin.cpp +msgid "Modify Curve" +msgstr "" + #: editor/plugins/item_list_editor_plugin.cpp msgid "Item %d" msgstr "" @@ -3715,6 +3721,10 @@ msgid "Node does not contain geometry (faces)." msgstr "" #: editor/plugins/particles_editor_plugin.cpp +msgid "A processor material of type 'ParticlesMaterial' is required." +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp msgid "Faces contain no area!" msgstr "" @@ -3727,11 +3737,11 @@ msgid "Generate AABB" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Mesh" +msgid "Create Emission Points From Mesh" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Node" +msgid "Create Emission Points From Node" msgstr "" #: editor/plugins/particles_editor_plugin.cpp @@ -3743,21 +3753,25 @@ msgid "Create Emitter" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Positions:" +msgid "Emission Points:" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Fill:" +msgid "Surface Points" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Surface" +msgid "Surface Points+Normal (Directed)" msgstr "" #: editor/plugins/particles_editor_plugin.cpp msgid "Volume" msgstr "" +#: editor/plugins/particles_editor_plugin.cpp +msgid "Emission Source: " +msgstr "" + #: editor/plugins/path_2d_editor_plugin.cpp msgid "Remove Point from Curve" msgstr "" @@ -6347,6 +6361,26 @@ msgstr "" msgid "just released" msgstr "" +#: platform/javascript/export/export.cpp +msgid "Run in Browser" +msgstr "" + +#: platform/javascript/export/export.cpp +msgid "Run exported HTML in the system's default browser." +msgstr "" + +#: platform/javascript/export/export.cpp +msgid "Could not write file:\n" +msgstr "" + +#: platform/javascript/export/export.cpp +msgid "Could not read file:\n" +msgstr "" + +#: platform/javascript/export/export.cpp +msgid "Could not open template for export:\n" +msgstr "" + #: platform/uwp/export/export.cpp msgid "" "Couldn't read the certificate file. Are the path and password both correct?" diff --git a/editor/translations/el.po b/editor/translations/el.po new file mode 100644 index 0000000000..357112ce0c --- /dev/null +++ b/editor/translations/el.po @@ -0,0 +1,6866 @@ +# Greek translation of the Godot Engine editor +# Copyright (C) 2016-2017 Juan Linietsky, Ariel Manzur and the Godot community +# This file is distributed under the same license as the Godot source code. +# +# gtsiam <gtsiam@windowslive.com>, 2017. +# +msgid "" +msgstr "" +"Project-Id-Version: Godot Engine editor\n" +"PO-Revision-Date: 2017-02-15 17:48+0000\n" +"Last-Translator: gtsiam <gtsiam@windowslive.com>\n" +"Language-Team: Greek <https://hosted.weblate.org/projects/godot-engine/godot/" +"el/>\n" +"Language: el\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8-bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 2.12-dev\n" + +#: editor/animation_editor.cpp +msgid "Disabled" +msgstr "Απενεργοποιημένο" + +#: editor/animation_editor.cpp +msgid "All Selection" +msgstr "Επιλογή όλων" + +#: editor/animation_editor.cpp +msgid "Move Add Key" +msgstr "Μετακίνηση κλειδιού προσθήκης" + +#: editor/animation_editor.cpp +msgid "Anim Change Transition" +msgstr "Anim Αλλαγή μετάβασης" + +#: editor/animation_editor.cpp +msgid "Anim Change Transform" +msgstr "Anim Αλλαγή μετασχηματισμού (transform)" + +#: editor/animation_editor.cpp +msgid "Anim Change Value" +msgstr "Anim Αλλαγή τιμής" + +#: editor/animation_editor.cpp +msgid "Anim Change Call" +msgstr "Anim Αλλαγή κλήσης" + +#: editor/animation_editor.cpp +msgid "Anim Add Track" +msgstr "Anim Προσθήκη κομματιού" + +#: editor/animation_editor.cpp +msgid "Anim Duplicate Keys" +msgstr "Anim Διπλασιασμός κλειδιών" + +#: editor/animation_editor.cpp +msgid "Move Anim Track Up" +msgstr "Μετακίνηση κομματιού animation πάνω" + +#: editor/animation_editor.cpp +msgid "Move Anim Track Down" +msgstr "Μετακίνηση κομματιού animation κάτω" + +#: editor/animation_editor.cpp +msgid "Remove Anim Track" +msgstr "Anim Αφαίρεση κομματιού" + +#: editor/animation_editor.cpp +msgid "Set Transitions to:" +msgstr "Ορισμός μεταβάσεων σε:" + +#: editor/animation_editor.cpp +msgid "Anim Track Rename" +msgstr "Anim Μετονομασία κομματιού" + +#: editor/animation_editor.cpp +msgid "Anim Track Change Interpolation" +msgstr "Anim Αλλαγή παρεμβολής κομματιού" + +#: editor/animation_editor.cpp +msgid "Anim Track Change Value Mode" +msgstr "Anim Λειτουργία αλλαγής τιμής κομματιού" + +#: editor/animation_editor.cpp +#, fuzzy +msgid "Anim Track Change Wrap Mode" +msgstr "Anim Λειτουργία αλλαγής τιμής κομματιού" + +#: editor/animation_editor.cpp +msgid "Edit Node Curve" +msgstr "Επεξεργασία Καμπύλης κόμβου" + +#: editor/animation_editor.cpp +msgid "Edit Selection Curve" +msgstr "Επεξεργασία επιλεγμένης καμπύλης" + +#: editor/animation_editor.cpp +msgid "Anim Delete Keys" +msgstr "Anim Διαγραφή κλειδιών" + +#: editor/animation_editor.cpp editor/plugins/tile_map_editor_plugin.cpp +msgid "Duplicate Selection" +msgstr "Διπλασιασμός επιλογής" + +#: editor/animation_editor.cpp +msgid "Duplicate Transposed" +msgstr "Διπλασιασμός ανεστραμένων" + +#: editor/animation_editor.cpp +msgid "Remove Selection" +msgstr "Αφαίρεση επιλογής" + +#: editor/animation_editor.cpp +msgid "Continuous" +msgstr "Συνεχόμενη" + +#: editor/animation_editor.cpp +msgid "Discrete" +msgstr "Ξεχωριστή" + +#: editor/animation_editor.cpp +msgid "Trigger" +msgstr "Άμεση" + +#: editor/animation_editor.cpp +msgid "Anim Add Key" +msgstr "Anim Προσθήκη κλειδιού" + +#: editor/animation_editor.cpp +msgid "Anim Move Keys" +msgstr "Anim Μετακίνηση κελιδιών" + +#: editor/animation_editor.cpp +msgid "Scale Selection" +msgstr "Μεγέθυνση επιλογής" + +#: editor/animation_editor.cpp +msgid "Scale From Cursor" +msgstr "Μεγέθυνση από τον δείκτη" + +#: editor/animation_editor.cpp +msgid "Goto Next Step" +msgstr "Πήγαινε στο επόμενο βήμα" + +#: editor/animation_editor.cpp +msgid "Goto Prev Step" +msgstr "Πήγαινε στο προηγούμενο βήμα" + +#: editor/animation_editor.cpp editor/property_editor.cpp +msgid "Linear" +msgstr "Γραμμική" + +#: editor/animation_editor.cpp editor/plugins/theme_editor_plugin.cpp +msgid "Constant" +msgstr "Σταθερή" + +#: editor/animation_editor.cpp +msgid "In" +msgstr "Είσοδος" + +#: editor/animation_editor.cpp +msgid "Out" +msgstr "Έξοδος" + +#: editor/animation_editor.cpp +msgid "In-Out" +msgstr "Είσοδος-Έξοδος" + +#: editor/animation_editor.cpp +msgid "Out-In" +msgstr "Έξοδος-Είσοδος" + +#: editor/animation_editor.cpp +msgid "Transitions" +msgstr "Μεταβάσεις" + +#: editor/animation_editor.cpp +msgid "Optimize Animation" +msgstr "Βελτιστοποίηση animation" + +#: editor/animation_editor.cpp +msgid "Clean-Up Animation" +msgstr "Καθαρισμός animation" + +#: editor/animation_editor.cpp +msgid "Create NEW track for %s and insert key?" +msgstr "Δημιουργία νέου κομματιού για %s και εισαγωγή κλειδιού;" + +#: editor/animation_editor.cpp +msgid "Create %d NEW tracks and insert keys?" +msgstr "Δημιουργία %d νέων κομματιών και εισαγωγή κλειδιών;" + +#: editor/animation_editor.cpp editor/create_dialog.cpp +#: editor/editor_audio_buses.cpp +#: editor/plugins/light_occluder_2d_editor_plugin.cpp +#: editor/plugins/mesh_instance_editor_plugin.cpp +#: editor/plugins/navigation_polygon_editor_plugin.cpp +#: editor/plugins/particles_editor_plugin.cpp editor/project_manager.cpp +#: editor/script_create_dialog.cpp +msgid "Create" +msgstr "Δημιουργία" + +#: editor/animation_editor.cpp +msgid "Anim Create & Insert" +msgstr "Anim Δημιουργία & Εισαγωγή" + +#: editor/animation_editor.cpp +msgid "Anim Insert Track & Key" +msgstr "Anim Εισαγωγή κομματιού & κλειδιού" + +#: editor/animation_editor.cpp +msgid "Anim Insert Key" +msgstr "Anim εισαγωγή κλειδιού" + +#: editor/animation_editor.cpp +msgid "Change Anim Len" +msgstr "Αλλαγή μήκους animation" + +#: editor/animation_editor.cpp +msgid "Change Anim Loop" +msgstr "Αλλαγή επανάληψης animation" + +#: editor/animation_editor.cpp +msgid "Anim Create Typed Value Key" +msgstr "Anim Δημιουργία κλειδιού τιμής ορισμένου τύπου" + +#: editor/animation_editor.cpp +msgid "Anim Insert" +msgstr "Anim Εισαγωγή" + +#: editor/animation_editor.cpp +msgid "Anim Scale Keys" +msgstr "Anim Μεγέθυνση κλειδιών" + +#: editor/animation_editor.cpp +msgid "Anim Add Call Track" +msgstr "Anim Προσθήκη κομματιού κλήσης" + +#: editor/animation_editor.cpp +msgid "Animation zoom." +msgstr "Μεγέθυνση animation." + +#: editor/animation_editor.cpp +msgid "Length (s):" +msgstr "Μήκος (s):" + +#: editor/animation_editor.cpp +msgid "Animation length (in seconds)." +msgstr "Μήκος animation (σε δευτερόλεπτα)." + +#: editor/animation_editor.cpp +msgid "Step (s):" +msgstr "Βήμα (s):" + +#: editor/animation_editor.cpp +msgid "Cursor step snap (in seconds)." +msgstr "Βήμα κλειδώματος δείκτη (σε δευτερόλεπτα)." + +#: editor/animation_editor.cpp +msgid "Enable/Disable looping in animation." +msgstr "Ενεργοποίηση/Απενεργοποίηση επανάληψης στο animation." + +#: editor/animation_editor.cpp +msgid "Add new tracks." +msgstr "Προσθήκη νέων κομματιών." + +#: editor/animation_editor.cpp +msgid "Move current track up." +msgstr "Μετακίνηση τρέχοντος κομματιού πάνω." + +#: editor/animation_editor.cpp +msgid "Move current track down." +msgstr "Μετακίνηση τρέχοντος κομματιού κάτω." + +#: editor/animation_editor.cpp +msgid "Remove selected track." +msgstr "Αφαίρεση επιλεγμένου κομματιού." + +#: editor/animation_editor.cpp +msgid "Track tools" +msgstr "Εργαλεία κομματιού" + +#: editor/animation_editor.cpp +msgid "Enable editing of individual keys by clicking them." +msgstr "Ενεργοποίηση επεξεργασίας μεμονωμένων κλειδιών με το κλικ." + +#: editor/animation_editor.cpp +msgid "Anim. Optimizer" +msgstr "Anim. Μηχανή βελτιστοποίησης" + +#: editor/animation_editor.cpp +msgid "Max. Linear Error:" +msgstr "Μέγιστο γραμμικό σφάλμα:" + +#: editor/animation_editor.cpp +msgid "Max. Angular Error:" +msgstr "Μέγιστο γωνιώδες σφάλμα:" + +#: editor/animation_editor.cpp +msgid "Max Optimizable Angle:" +msgstr "Μέγιστη βελτιστοποίησιμη γωνία:" + +#: editor/animation_editor.cpp +msgid "Optimize" +msgstr "Βελτιστοποίησε" + +#: editor/animation_editor.cpp +msgid "Select an AnimationPlayer from the Scene Tree to edit animations." +msgstr "" +"Επιλέξτε ένα AnimationPlayer από την ιεραρχία της σκηνής για να " +"επεξεργαστείτε animations." + +#: editor/animation_editor.cpp +msgid "Key" +msgstr "Κλειδί" + +#: editor/animation_editor.cpp +msgid "Transition" +msgstr "Μετάβαση" + +#: editor/animation_editor.cpp +msgid "Scale Ratio:" +msgstr "Λόγος μεγέθυνσης:" + +#: editor/animation_editor.cpp +msgid "Call Functions in Which Node?" +msgstr "Σε ποιο κόμβο να κληθούν οι συναρτήσεις;" + +#: editor/animation_editor.cpp +msgid "Remove invalid keys" +msgstr "Αφαίρεση άκυρων κλειδιών" + +#: editor/animation_editor.cpp +msgid "Remove unresolved and empty tracks" +msgstr "Αφαίρεση ανεπίλυτων και άδειων κομματιών" + +#: editor/animation_editor.cpp +msgid "Clean-up all animations" +msgstr "Εκκαθάριση όλων των animation" + +#: editor/animation_editor.cpp +msgid "Clean-Up Animation(s) (NO UNDO!)" +msgstr "Εκκαθάριση όλων των animation (ΧΩΡΙΣ ΑΝΑΙΡΕΣΗ!)" + +#: editor/animation_editor.cpp +msgid "Clean-Up" +msgstr "Εκκαθάριση" + +#: editor/array_property_edit.cpp +msgid "Resize Array" +msgstr "Αλλαγή μεγέθους πίνακα" + +#: editor/array_property_edit.cpp +msgid "Change Array Value Type" +msgstr "Αλλαγή τύπου τιμής πίνακα" + +#: editor/array_property_edit.cpp +msgid "Change Array Value" +msgstr "Αλλαγή τιμής πίνακα" + +#: editor/asset_library_editor_plugin.cpp editor/create_dialog.cpp +#: editor/editor_help.cpp editor/editor_node.cpp +#: editor/plugins/script_editor_plugin.cpp editor/property_selector.cpp +#: editor/quick_open.cpp editor/settings_config_dialog.cpp +msgid "Search:" +msgstr "Αναζήτηση:" + +#: editor/asset_library_editor_plugin.cpp +msgid "Sort:" +msgstr "Ταξινόμηση:" + +#: editor/asset_library_editor_plugin.cpp +msgid "Reverse" +msgstr "Αντιστροφή" + +#: editor/asset_library_editor_plugin.cpp editor/project_settings.cpp +msgid "Category:" +msgstr "Κατηγορία:" + +#: editor/asset_library_editor_plugin.cpp +msgid "All" +msgstr "Όλα" + +#: editor/asset_library_editor_plugin.cpp +msgid "Site:" +msgstr "Διεύθυνση:" + +#: editor/asset_library_editor_plugin.cpp +msgid "Support.." +msgstr "Υποστήριξη.." + +#: editor/asset_library_editor_plugin.cpp +msgid "Official" +msgstr "Επίσημα" + +#: editor/asset_library_editor_plugin.cpp +msgid "Community" +msgstr "Κοινότητα" + +#: editor/asset_library_editor_plugin.cpp +msgid "Testing" +msgstr "Δοκιμιμαστικά" + +#: editor/asset_library_editor_plugin.cpp +msgid "Assets ZIP File" +msgstr "Αρχείο ZIP του Asset" + +#: editor/call_dialog.cpp +msgid "Method List For '%s':" +msgstr "Λίστα συναρτήσεων για '%s':" + +#: editor/call_dialog.cpp modules/visual_script/visual_script_editor.cpp +msgid "Call" +msgstr "Κλήση" + +#: editor/call_dialog.cpp editor/connections_dialog.cpp +#: editor/export_template_manager.cpp +#: editor/plugins/animation_player_editor_plugin.cpp +#: editor/plugins/canvas_item_editor_plugin.cpp +#: editor/plugins/resource_preloader_editor_plugin.cpp +#: editor/plugins/sample_library_editor_plugin.cpp +#: editor/plugins/script_editor_plugin.cpp +#: editor/plugins/sprite_frames_editor_plugin.cpp editor/project_settings.cpp +#: editor/property_editor.cpp editor/run_settings_dialog.cpp +#: editor/settings_config_dialog.cpp +#: modules/visual_script/visual_script_editor.cpp +msgid "Close" +msgstr "Κλείσιμο" + +#: editor/call_dialog.cpp +msgid "Method List:" +msgstr "Λίστα συναρτήσεων:" + +#: editor/call_dialog.cpp +msgid "Arguments:" +msgstr "Παράμετροι:" + +#: editor/call_dialog.cpp +msgid "Return:" +msgstr "Επιστρέφει:" + +#: editor/code_editor.cpp +msgid "Go to Line" +msgstr "Πήγαινε στη γραμμή" + +#: editor/code_editor.cpp +msgid "Line Number:" +msgstr "Αρ. γραμμής:" + +#: editor/code_editor.cpp +msgid "No Matches" +msgstr "Δεν υπάρχουν αντιστοιχίες" + +#: editor/code_editor.cpp +#, fuzzy +msgid "Replaced %d occurrence(s)." +msgstr "Αντικαταστάθηκαν %d εμφανίσεις." + +#: editor/code_editor.cpp +msgid "Replace" +msgstr "Αντικατάσταση" + +#: editor/code_editor.cpp +msgid "Replace All" +msgstr "Αντικατάσταση όλων" + +#: editor/code_editor.cpp +msgid "Match Case" +msgstr "Αντιστοίχηση πεζών-κεφαλαίων" + +#: editor/code_editor.cpp +msgid "Whole Words" +msgstr "Ολόκληρες λέξεις" + +#: editor/code_editor.cpp +msgid "Selection Only" +msgstr "Μόνο στην επιλογή" + +#: editor/code_editor.cpp editor/editor_help.cpp +#: editor/plugins/script_editor_plugin.cpp +#: editor/plugins/script_text_editor.cpp +#: editor/plugins/shader_editor_plugin.cpp editor/project_settings.cpp +msgid "Search" +msgstr "Αναζήτηση" + +#: editor/code_editor.cpp editor/editor_help.cpp +msgid "Find" +msgstr "Εύρεση" + +#: editor/code_editor.cpp +msgid "Next" +msgstr "Επόμενο" + +#: editor/code_editor.cpp +msgid "Not found!" +msgstr "Δεν βρέθηκε!" + +#: editor/code_editor.cpp +msgid "Replace By" +msgstr "Αντικατάσταση με" + +#: editor/code_editor.cpp +msgid "Case Sensitive" +msgstr "Διάκριση πεζών-κεφαλαίων" + +#: editor/code_editor.cpp +msgid "Backwards" +msgstr "Αντίστροφα" + +#: editor/code_editor.cpp +msgid "Prompt On Replace" +msgstr "Ρώτησε στην αντικατάσταση" + +#: editor/code_editor.cpp +msgid "Skip" +msgstr "Παράλειψη" + +#: editor/code_editor.cpp editor/plugins/canvas_item_editor_plugin.cpp +msgid "Zoom In" +msgstr "Μεγέθυνση" + +#: editor/code_editor.cpp editor/plugins/canvas_item_editor_plugin.cpp +msgid "Zoom Out" +msgstr "Σμύκρινση" + +#: editor/code_editor.cpp +msgid "Reset Zoom" +msgstr "Επαναφορά μεγέθυνσης" + +#: editor/code_editor.cpp editor/script_editor_debugger.cpp +msgid "Line:" +msgstr "Γραμμή:" + +#: editor/code_editor.cpp +msgid "Col:" +msgstr "Στήλη:" + +#: editor/connections_dialog.cpp +msgid "Method in target Node must be specified!" +msgstr "Πρέπει να ορισθεί συνάρτηση για τον στοχευμένο κόμβο!" + +#: editor/connections_dialog.cpp +msgid "" +"Target method not found! Specify a valid method or attach a script to target " +"Node." +msgstr "" +"Η στοχευμένη συνάρτηση δεν βρέθηκε! Ορίστε μία έγκυρη μέθοδο ή συνδέστε ένα " +"script στον στοχευμένο κόμβο." + +#: editor/connections_dialog.cpp +msgid "Connect To Node:" +msgstr "Σύνδεση στον κόμβο:" + +#: editor/connections_dialog.cpp editor/editor_autoload_settings.cpp +#: editor/groups_editor.cpp editor/plugins/item_list_editor_plugin.cpp +#: editor/plugins/theme_editor_plugin.cpp editor/project_settings.cpp +msgid "Add" +msgstr "Προσθήκη" + +#: editor/connections_dialog.cpp editor/dependency_editor.cpp +#: editor/plugins/animation_tree_editor_plugin.cpp +#: editor/plugins/theme_editor_plugin.cpp editor/project_manager.cpp +msgid "Remove" +msgstr "Αφαίρεση" + +#: editor/connections_dialog.cpp +msgid "Add Extra Call Argument:" +msgstr "Προσθήκη επιπλέον παραμέτρου κλήσης:" + +#: editor/connections_dialog.cpp +msgid "Extra Call Arguments:" +msgstr "Επιπλέον παράμετροι κλήσης:" + +#: editor/connections_dialog.cpp +msgid "Path to Node:" +msgstr "Διαδρομή για τον κόμβο:" + +#: editor/connections_dialog.cpp +msgid "Make Function" +msgstr "Δημιουργήστε μία συνάρτηση" + +#: editor/connections_dialog.cpp +msgid "Deferred" +msgstr "Αναβλημένη" + +#: editor/connections_dialog.cpp +msgid "Oneshot" +msgstr "Μία κλήση" + +#: editor/connections_dialog.cpp +msgid "Connect" +msgstr "Σύνδεση" + +#: editor/connections_dialog.cpp +msgid "Connect '%s' to '%s'" +msgstr "Σύνδεση του '%s' στο '%s'" + +#: editor/connections_dialog.cpp +msgid "Connecting Signal:" +msgstr "Σύνδεση στο σήμα:" + +#: editor/connections_dialog.cpp +msgid "Create Subscription" +msgstr "Δημιουργία εγγραφής" + +#: editor/connections_dialog.cpp +msgid "Connect.." +msgstr "Σύνδεση.." + +#: editor/connections_dialog.cpp +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Disconnect" +msgstr "Αποσύνδεση" + +#: editor/connections_dialog.cpp editor/node_dock.cpp +msgid "Signals" +msgstr "Σήματα" + +#: editor/create_dialog.cpp +msgid "Create New" +msgstr "Δημιουργία νέου" + +#: editor/create_dialog.cpp editor/editor_file_dialog.cpp +#: editor/filesystem_dock.cpp +msgid "Favorites:" +msgstr "Αγαπημένα:" + +#: editor/create_dialog.cpp editor/editor_file_dialog.cpp +msgid "Recent:" +msgstr "Πρόσφατα:" + +#: editor/create_dialog.cpp editor/editor_help.cpp +#: editor/plugins/script_editor_plugin.cpp editor/property_selector.cpp +#: editor/quick_open.cpp +msgid "Matches:" +msgstr "Αντιστοιχίες:" + +#: editor/create_dialog.cpp editor/editor_help.cpp editor/property_selector.cpp +#: editor/script_editor_debugger.cpp +msgid "Description:" +msgstr "Περιγραφή:" + +#: editor/dependency_editor.cpp +msgid "Search Replacement For:" +msgstr "Αναζήτηση αντικατάστασης για:" + +#: editor/dependency_editor.cpp +msgid "Dependencies For:" +msgstr "Εξαρτήσεις για:" + +#: editor/dependency_editor.cpp +msgid "" +"Scene '%s' is currently being edited.\n" +"Changes will not take effect unless reloaded." +msgstr "" +"Γίνεται επεξεργασία στη σκηνή '%s'\n" +"Οι αλλαγές δεν θα δράσουν, εκτός κι αν γίνει επαναφόρτωση." + +#: editor/dependency_editor.cpp +msgid "" +"Resource '%s' is in use.\n" +"Changes will take effect when reloaded." +msgstr "" +"Ο πόρος '%s' χρησιμοποιείται.\n" +"Οι αλλαγές θα δράσουν όταν γίνει επαναφόρτωση." + +#: editor/dependency_editor.cpp +msgid "Dependencies" +msgstr "Εξαρτήσεις" + +#: editor/dependency_editor.cpp +msgid "Resource" +msgstr "Πόρος" + +#: editor/dependency_editor.cpp editor/editor_autoload_settings.cpp +#: editor/project_manager.cpp editor/project_settings.cpp +msgid "Path" +msgstr "Διαδρομή" + +#: editor/dependency_editor.cpp +msgid "Dependencies:" +msgstr "Εξαρτήσεις:" + +#: editor/dependency_editor.cpp +msgid "Fix Broken" +msgstr "Διόρθωση χαλασμένων" + +#: editor/dependency_editor.cpp +msgid "Dependency Editor" +msgstr "Επεξεργαστής εξαρτήσεων" + +#: editor/dependency_editor.cpp +msgid "Search Replacement Resource:" +msgstr "Αναζήτηση αντικαταστάτη πόρου:" + +#: editor/dependency_editor.cpp +msgid "Owners Of:" +msgstr "Ιδιοκτήτες του:" + +#: editor/dependency_editor.cpp +msgid "" +"The files being removed are required by other resources in order for them to " +"work.\n" +"Remove them anyway? (no undo)" +msgstr "" +"Τα αρχεία που αφαιρούνται απαιτούνται από άλλους πόρους για να δουλέψουν.\n" +"Να αφαιρεθούν; (Αδύνατη η αναίρεση)" + +#: editor/dependency_editor.cpp +msgid "Remove selected files from the project? (no undo)" +msgstr "Να αφαιρεθούν τα επιλεγμένα αρχεία από το έργο; (Αδύνατη η αναίρεση)" + +#: editor/dependency_editor.cpp +msgid "Error loading:" +msgstr "Σφάλμα κατά την φόρτωση:" + +#: editor/dependency_editor.cpp +msgid "Scene failed to load due to missing dependencies:" +msgstr "Η φόρτωση της σκηνής απέτυχε, λόγω απόντων εξαρτήσεων:" + +#: editor/dependency_editor.cpp editor/editor_node.cpp +msgid "Open Anyway" +msgstr "Άνοιγμα πάραυτα" + +#: editor/dependency_editor.cpp +msgid "Which action should be taken?" +msgstr "Ποια πράξη να γίνει;" + +#: editor/dependency_editor.cpp +msgid "Fix Dependencies" +msgstr "Διόρθωση εξαρτήσεων" + +#: editor/dependency_editor.cpp +msgid "Errors loading!" +msgstr "Σφάλματα κατά την φόρτωση!" + +#: editor/dependency_editor.cpp +msgid "Permanently delete %d item(s)? (No undo!)" +msgstr "Μόνιμη διαγραφή %d αντικειμένων; (Αδύνατη η αναίρεση)" + +#: editor/dependency_editor.cpp +msgid "Owns" +msgstr "Κατέχει" + +#: editor/dependency_editor.cpp +msgid "Resources Without Explicit Ownership:" +msgstr "Πόροι χωρίς ρητή ιδιοκτησία:" + +#: editor/dependency_editor.cpp editor/editor_node.cpp +msgid "Orphan Resource Explorer" +msgstr "Εξερευνητής αχρησιμοποίητων πόρων" + +#: editor/dependency_editor.cpp +msgid "Delete selected files?" +msgstr "Διαγραφή επιλεγμένων αρχείων;" + +#: editor/dependency_editor.cpp editor/editor_node.cpp +#: editor/filesystem_dock.cpp editor/plugins/item_list_editor_plugin.cpp +#: editor/project_export.cpp editor/scene_tree_dock.cpp +msgid "Delete" +msgstr "Διαγραφή" + +#: editor/editor_audio_buses.cpp +msgid "Save Audio Bus Layout As.." +msgstr "" + +#: editor/editor_audio_buses.cpp +msgid "Location for New Layout.." +msgstr "" + +#: editor/editor_audio_buses.cpp +msgid "Open Audio Bus Layout" +msgstr "" + +#: editor/editor_audio_buses.cpp +msgid "Add Bus" +msgstr "" + +#: editor/editor_audio_buses.cpp editor/property_editor.cpp +#: editor/script_create_dialog.cpp +msgid "Load" +msgstr "" + +#: editor/editor_audio_buses.cpp +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Save As" +msgstr "" + +#: editor/editor_audio_buses.cpp editor/editor_node.cpp editor/import_dock.cpp +msgid "Default" +msgstr "Προεπιλεγμένη" + +#: editor/editor_autoload_settings.cpp +msgid "Invalid name." +msgstr "Μη έγκυρο όνομα." + +#: editor/editor_autoload_settings.cpp +msgid "Valid characters:" +msgstr "Έγκυροι χαρακτήρες:" + +#: editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing engine class name." +msgstr "" +"Άκυρο όνομα. Δεν πρέπει να συγχέεται με υπαρκτό όνομα κλάσης της godot." + +#: editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing buit-in type name." +msgstr "" +"Άκυρο όνομα. Δεν πρέπει να συγχέεται με υπαρκτό ενσωματωμένο όνομα τύπου." + +#: editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing global constant name." +msgstr "Άκυρο όνομα. Δεν πρέπει να συγχέεται με υπαρκτό καθολικό όνομα." + +#: editor/editor_autoload_settings.cpp +msgid "Invalid Path." +msgstr "Άκυρη διαδρομή." + +#: editor/editor_autoload_settings.cpp +msgid "File does not exist." +msgstr "Το αρχείο δεν υπάρχει." + +#: editor/editor_autoload_settings.cpp +msgid "Not in resource path." +msgstr "Δεν υπάρχει στην διαδρομή πόρων." + +#: editor/editor_autoload_settings.cpp +msgid "Add AutoLoad" +msgstr "Προσθήκη AutoLoad" + +#: editor/editor_autoload_settings.cpp +msgid "Autoload '%s' already exists!" +msgstr "AutoLoad '%s' υπάρχει ήδη!" + +#: editor/editor_autoload_settings.cpp +msgid "Rename Autoload" +msgstr "Μετονομασία AutoLoad" + +#: editor/editor_autoload_settings.cpp +msgid "Toggle AutoLoad Globals" +msgstr "Εναλλαγή καθολικών υπογραφών AutoLoad" + +#: editor/editor_autoload_settings.cpp +msgid "Move Autoload" +msgstr "Μετακίνηση AutoLoad" + +#: editor/editor_autoload_settings.cpp +msgid "Remove Autoload" +msgstr "Αφαίρεση AutoLoad" + +#: editor/editor_autoload_settings.cpp +msgid "Enable" +msgstr "Ενεργοποίηση" + +#: editor/editor_autoload_settings.cpp +msgid "Rearrange Autoloads" +msgstr "Αναδιάταξη των AutoLoad" + +#: editor/editor_autoload_settings.cpp editor/editor_file_dialog.cpp +#: editor/io_plugins/editor_font_import_plugin.cpp +#: editor/script_create_dialog.cpp scene/gui/file_dialog.cpp +msgid "Path:" +msgstr "Διαδρομή:" + +#: editor/editor_autoload_settings.cpp +msgid "Node Name:" +msgstr "Όνομα κόμβου:" + +#: editor/editor_autoload_settings.cpp +#: editor/io_plugins/editor_scene_import_plugin.cpp +#: editor/plugins/sample_library_editor_plugin.cpp editor/project_manager.cpp +msgid "Name" +msgstr "Όνομα" + +#: editor/editor_autoload_settings.cpp +#, fuzzy +msgid "Singleton" +msgstr "Μονοσύνολο" + +#: editor/editor_autoload_settings.cpp +msgid "List:" +msgstr "Λίστα:" + +#: editor/editor_data.cpp +msgid "Updating Scene" +msgstr "Ενημέρωση σκηνής" + +#: editor/editor_data.cpp +msgid "Storing local changes.." +msgstr "Αποθήκευση τοπικών αλλαγών.." + +#: editor/editor_data.cpp +msgid "Updating scene.." +msgstr "Ενημέρωση σκηνής.." + +#: editor/editor_dir_dialog.cpp +msgid "Choose a Directory" +msgstr "Επιλέξτε ένα λεξικό" + +#: editor/editor_dir_dialog.cpp editor/editor_file_dialog.cpp +#: scene/gui/file_dialog.cpp +msgid "Create Folder" +msgstr "Δημιουργία φακέλου" + +#: editor/editor_dir_dialog.cpp editor/editor_file_dialog.cpp +#: editor/editor_plugin_settings.cpp editor/plugins/theme_editor_plugin.cpp +#: editor/project_export.cpp scene/gui/file_dialog.cpp +msgid "Name:" +msgstr "Όνομα:" + +#: editor/editor_dir_dialog.cpp editor/editor_file_dialog.cpp +#: scene/gui/file_dialog.cpp +msgid "Could not create folder." +msgstr "Αδύνατη η δημιουργία φακέλου." + +#: editor/editor_dir_dialog.cpp +msgid "Choose" +msgstr "Επιλέξτε" + +#: editor/editor_export.cpp +#, fuzzy +msgid "Storing File:" +msgstr "Αρχείο αποθήκευσης:" + +#: editor/editor_export.cpp +msgid "Packing" +msgstr "Πακετάρισμα" + +#: editor/editor_export.cpp platform/javascript/export/export.cpp +msgid "Template file not found:\n" +msgstr "" + +#: editor/editor_export.cpp +msgid "Added:" +msgstr "Προστέθηκαν:" + +#: editor/editor_export.cpp +msgid "Removed:" +msgstr "Αφαιρέθηκαν:" + +#: editor/editor_export.cpp +msgid "Error saving atlas:" +msgstr "Σφάλμα κατά την αποθήκευση άτλαντα:" + +#: editor/editor_export.cpp +msgid "Could not save atlas subtexture:" +msgstr "Αδύνατη η αποθήκευση υπό-εικόνας άτλαντα:" + +#: editor/editor_export.cpp +msgid "Exporting for %s" +msgstr "Εξαγωγή για %s" + +#: editor/editor_export.cpp +msgid "Setting Up.." +msgstr "Αρχικοποίηση.." + +#: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp +msgid "File Exists, Overwrite?" +msgstr "Το αρχείο υπάρχει. Θέλετε να το αντικαταστήσετε;" + +#: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp +msgid "All Recognized" +msgstr "Όλες αναγνωρίστηκαν" + +#: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp +msgid "All Files (*)" +msgstr "Όλα τα αρχεία (*)" + +#: editor/editor_file_dialog.cpp editor/editor_help.cpp editor/editor_node.cpp +#: editor/filesystem_dock.cpp editor/plugins/script_editor_plugin.cpp +#: editor/property_selector.cpp editor/quick_open.cpp scene/gui/file_dialog.cpp +msgid "Open" +msgstr "Άνοιγμα" + +#: editor/editor_file_dialog.cpp editor/editor_node.cpp +#: editor/plugins/animation_player_editor_plugin.cpp +#: editor/plugins/script_editor_plugin.cpp scene/gui/file_dialog.cpp +msgid "Save" +msgstr "Αποθήκευση" + +#: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp +msgid "Save a File" +msgstr "Αποθήκευση αρχείου" + +#: editor/editor_file_dialog.cpp +msgid "Go Back" +msgstr "Πήγαινε πίσω" + +#: editor/editor_file_dialog.cpp +msgid "Go Forward" +msgstr "Πήγαινε μπροστά" + +#: editor/editor_file_dialog.cpp +msgid "Go Up" +msgstr "Πήγαινε πάνω" + +#: editor/editor_file_dialog.cpp +msgid "Refresh" +msgstr "Αναναίωση" + +#: editor/editor_file_dialog.cpp +msgid "Toggle Hidden Files" +msgstr "Εναλλαγή κρυμμένων αρχείων" + +#: editor/editor_file_dialog.cpp +msgid "Toggle Favorite" +msgstr "Εναλλαγή αγαπημένου" + +#: editor/editor_file_dialog.cpp +msgid "Toggle Mode" +msgstr "Εναλλαγή λειτουργίας" + +#: editor/editor_file_dialog.cpp +#, fuzzy +msgid "Focus Path" +msgstr "Επικέντρωση στη διαδρομή" + +#: editor/editor_file_dialog.cpp +msgid "Move Favorite Up" +msgstr "Μετακίνηση αγαπημένου πάνω" + +#: editor/editor_file_dialog.cpp +msgid "Move Favorite Down" +msgstr "Μετακίνηση αγαπημένου κάτω" + +#: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp +msgid "Directories & Files:" +msgstr "Φάκελοι & Αρχεία:" + +#: editor/editor_file_dialog.cpp +msgid "Preview:" +msgstr "Προεπισκόπηση:" + +#: editor/editor_file_dialog.cpp editor/script_editor_debugger.cpp +#: scene/gui/file_dialog.cpp +msgid "File:" +msgstr "Αρχείο:" + +#: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp +msgid "Filter:" +msgstr "Φίλτρο:" + +#: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp +msgid "Must use a valid extension." +msgstr "Απαιτείται η χρήση έγκυρης επέκτασης." + +#: editor/editor_file_system.cpp +msgid "ScanSources" +msgstr "Σάρωση πηγών" + +#: editor/editor_file_system.cpp +#, fuzzy +msgid "(Re)Importing Assets" +msgstr "Επανεισαγωγή" + +#: editor/editor_help.cpp editor/plugins/script_editor_plugin.cpp +msgid "Search Help" +msgstr "Αναζήτηση βοήθειας" + +#: editor/editor_help.cpp +msgid "Class List:" +msgstr "Λίστα κλάσεων:" + +#: editor/editor_help.cpp +msgid "Search Classes" +msgstr "Αναζήτηση κλάσεων" + +#: editor/editor_help.cpp editor/property_editor.cpp +msgid "Class:" +msgstr "Κλάση:" + +#: editor/editor_help.cpp editor/scene_tree_editor.cpp +#: editor/script_create_dialog.cpp +msgid "Inherits:" +msgstr "Κληρονομεί:" + +#: editor/editor_help.cpp +msgid "Inherited by:" +msgstr "Κληρονομείται από:" + +#: editor/editor_help.cpp +msgid "Brief Description:" +msgstr "Σύντομη περιγραφή:" + +#: editor/editor_help.cpp modules/visual_script/visual_script_editor.cpp +msgid "Members:" +msgstr "Μέλη:" + +#: editor/editor_help.cpp +msgid "Public Methods:" +msgstr "Δημόσιες συναρτήσεις:" + +#: editor/editor_help.cpp +msgid "GUI Theme Items:" +msgstr "Στοιχεία του θέματος GUI:" + +#: editor/editor_help.cpp modules/visual_script/visual_script_editor.cpp +msgid "Signals:" +msgstr "Σήματα:" + +#: editor/editor_help.cpp +msgid "Constants:" +msgstr "Σταθερές:" + +#: editor/editor_help.cpp +msgid "Property Description:" +msgstr "Περιγραφή ιδιότητας:" + +#: editor/editor_help.cpp +msgid "Method Description:" +msgstr "Περιγραφή μεθόδου:" + +#: editor/editor_help.cpp +msgid "Search Text" +msgstr "Αναζήτηση κειμένου" + +#: editor/editor_log.cpp +msgid " Output:" +msgstr " Έξοδος:" + +#: editor/editor_log.cpp editor/plugins/animation_tree_editor_plugin.cpp +#: editor/plugins/rich_text_editor_plugin.cpp editor/property_editor.cpp +#: editor/script_editor_debugger.cpp scene/gui/line_edit.cpp +#: scene/gui/text_edit.cpp +msgid "Clear" +msgstr "Εκκαθάριση" + +#: editor/editor_node.cpp +msgid "Node From Scene" +msgstr "Κόμβος από σκηνή" + +#: editor/editor_node.cpp editor/plugins/animation_player_editor_plugin.cpp +#: editor/resources_dock.cpp +msgid "Error saving resource!" +msgstr "Σφάλμα κατά την αποθήκευση πόρου!" + +#: editor/editor_node.cpp editor/plugins/animation_player_editor_plugin.cpp +#: editor/resources_dock.cpp +msgid "Save Resource As.." +msgstr "Αποθήκευση πόρου ως.." + +#: editor/editor_node.cpp editor/export_template_manager.cpp +#: editor/plugins/canvas_item_editor_plugin.cpp editor/scene_tree_dock.cpp +msgid "I see.." +msgstr "Εντάξει.." + +#: editor/editor_node.cpp +msgid "Can't open file for writing:" +msgstr "Αδύνατο το άνοιγμα αρχείου για εγγραφή:" + +#: editor/editor_node.cpp +msgid "Requested file format unknown:" +msgstr "Ζητήθηκε άγνωστη μορφή αρχείου:" + +#: editor/editor_node.cpp +msgid "Error while saving." +msgstr "Σφάλμα κατά την αποθήκευση." + +#: editor/editor_node.cpp +msgid "Saving Scene" +msgstr "Αποθήκευση σκηνής" + +#: editor/editor_node.cpp +msgid "Analyzing" +msgstr "Ανάλυση" + +#: editor/editor_node.cpp +msgid "Creating Thumbnail" +msgstr "Δημιουργία μικρογραφίας" + +#: editor/editor_node.cpp +msgid "" +"Couldn't save scene. Likely dependencies (instances) couldn't be satisfied." +msgstr "" +"Αδύνατη η αποθήκευση σκηνής. Πιθανώς οι εξαρτήσεις (στιγμιότυπα) να μην " +"μπορούσαν να ικανοποιηθούν." + +#: editor/editor_node.cpp +msgid "Failed to load resource." +msgstr "Απέτυχε η φόρτωση πόρου." + +#: editor/editor_node.cpp +msgid "Can't load MeshLibrary for merging!" +msgstr "Αδύνατο το φόρτωμα του MeshLibrary για συγχώνευση!" + +#: editor/editor_node.cpp +msgid "Error saving MeshLibrary!" +msgstr "Σφάλμα κατά την αποθήκευση MeshLibrary!" + +#: editor/editor_node.cpp +msgid "Can't load TileSet for merging!" +msgstr "Αδύνατο το φόρτωμα του TileSet για συγχώνευση!" + +#: editor/editor_node.cpp +msgid "Error saving TileSet!" +msgstr "Σφάλμα κατά την αποθήκευση TileSet!" + +#: editor/editor_node.cpp +msgid "Error trying to save layout!" +msgstr "Σφάλμα κατά την αποθήκευση διάταξης!" + +#: editor/editor_node.cpp +msgid "Default editor layout overridden." +msgstr "Η προεπιλεγμένη διάταξη του editor έχει παρακαμφθεί." + +#: editor/editor_node.cpp +msgid "Layout name not found!" +msgstr "Το όνομα της διάταξης δεν βρέθηκε!" + +#: editor/editor_node.cpp +msgid "Restored default layout to base settings." +msgstr "Επαναφορά της προεπιλεγμένης διάταξης στις βασικές ρυθμίσεις." + +#: editor/editor_node.cpp +msgid "Copy Params" +msgstr "Αντιγραφή παραμέτρων" + +#: editor/editor_node.cpp +msgid "Paste Params" +msgstr "Επικόλληση παραμέτρων" + +#: editor/editor_node.cpp editor/plugins/resource_preloader_editor_plugin.cpp +msgid "Paste Resource" +msgstr "Επικόλληση πόρου" + +#: editor/editor_node.cpp +msgid "Copy Resource" +msgstr "Αντιγραφή πόρου" + +#: editor/editor_node.cpp +msgid "Make Built-In" +msgstr "Μετατροπή σε ενσωματωμένο" + +#: editor/editor_node.cpp +msgid "Make Sub-Resources Unique" +msgstr "Κάνε τους υπό-πόρους μοναδικούς" + +#: editor/editor_node.cpp +msgid "Open in Help" +msgstr "Άνοιγμα στη βοήθεια" + +#: editor/editor_node.cpp +msgid "There is no defined scene to run." +msgstr "Δεν υπάρχει καθορισμένη σκηνή για εκτελέση." + +#: editor/editor_node.cpp +msgid "" +"No main scene has ever been defined, select one?\n" +"You can change it later in later in \"Project Settings\" under the " +"'application' category." +msgstr "" +"Η κύρια σκηνή δεν έχει καθοριστεί, θέλετε να επιλέξετε μία;\n" +"Μπορείτε να την αλλάξετε αργότερα στις «Ρυθμίσεις έργου» κάτω από την " +"κατηγορία «εφαρμογή»." + +#: editor/editor_node.cpp +msgid "" +"Selected scene '%s' does not exist, select a valid one?\n" +"You can change it later in \"Project Settings\" under the 'application' " +"category." +msgstr "" +"Η επιλεγμένη σκηνή '%s' δεν υπάρχει, θέλετε να επιλέξετε μία έγκυρη;\n" +"Μπορείτε να την αλλάξετε αργότερα στις «Ρυθμίσεις έργου» κάτω από την " +"κατηγορία «εφαρμογή»." + +#: editor/editor_node.cpp +msgid "" +"Selected scene '%s' is not a scene file, select a valid one?\n" +"You can change it later in \"Project Settings\" under the 'application' " +"category." +msgstr "" +"Η επιλεγμένη σκηνή '%s' δεν είναι αρχείο σκηνής, θέλετε να επιλέξετε μία " +"έγκυρη;\n" +"Μπορείτε να την αλλάξετε αργότερα στις «Ρυθμίσεις έργου» κάτω από την " +"κατηγορία «εφαρμογή»." + +#: editor/editor_node.cpp +msgid "Current scene was never saved, please save it prior to running." +msgstr "" +"Η τρέχουσα σκηνή δεν έχει αποθηκευτεί, αποθηκεύστε πριν να τρέξετε το " +"πρόγραμμα." + +#: editor/editor_node.cpp +msgid "Could not start subprocess!" +msgstr "Αδύνατη η εκκίνηση της υπό-εργασίας!" + +#: editor/editor_node.cpp +msgid "Open Scene" +msgstr "Άνοιγμα σκηνής" + +#: editor/editor_node.cpp +msgid "Open Base Scene" +msgstr "Άνοιγμα σκηνής βάσης" + +#: editor/editor_node.cpp +msgid "Quick Open Scene.." +msgstr "Γρήγορο άνοιγμα σκηνής..." + +#: editor/editor_node.cpp +msgid "Quick Open Script.." +msgstr "Γρήγορη ανοιχτό script..." + +#: editor/editor_node.cpp +msgid "Yes" +msgstr "Ναι" + +#: editor/editor_node.cpp +msgid "Close scene? (Unsaved changes will be lost)" +msgstr "Κλείσιμο σκηνής; (Οι μη αποθηκευμένες αλλαγές θα χαθούν)" + +#: editor/editor_node.cpp +msgid "Save Scene As.." +msgstr "Αποθήκευση σκηνή ως..." + +#: editor/editor_node.cpp +msgid "This scene has never been saved. Save before running?" +msgstr "Αυτή η σκηνή δεν έχει αποθηκευτεί. Αποθήκευση πριν από την εκτέλεση;" + +#: editor/editor_node.cpp +#, fuzzy +msgid "Export Mesh Library" +msgstr "Εξαγωγή βιβλιοθήκης mesh" + +#: editor/editor_node.cpp +msgid "Export Tile Set" +msgstr "Εξαγωγή σετ πλακιδίων" + +#: editor/editor_node.cpp +msgid "Quit" +msgstr "Έξοδος" + +#: editor/editor_node.cpp +msgid "Exit the editor?" +msgstr "Τερματισμός του προγράμματος επεξεργασίας;" + +#: editor/editor_node.cpp +msgid "Current scene not saved. Open anyway?" +msgstr "Η τρέχουσα σκηνή δεν έχει αποθηκευτεί. Συνέχεια με το άνοιγμα;" + +#: editor/editor_node.cpp +msgid "Can't reload a scene that was never saved." +msgstr "" +"Δεν είναι δυνατό να φορτώσετε εκ νέου μια σκηνή που δεν αποθηκεύτηκε ποτέ." + +#: editor/editor_node.cpp +msgid "Revert" +msgstr "Επαναφορά" + +#: editor/editor_node.cpp +msgid "This action cannot be undone. Revert anyway?" +msgstr "" +"Αυτή η ενέργεια δεν μπορεί να αναιρεθεί. Θέλετε να συνεχίσετε με την " +"επαναφορά;" + +#: editor/editor_node.cpp +msgid "Quick Run Scene.." +msgstr "Γρήγορη εκτέλεση σκηνής..." + +#: editor/editor_node.cpp +msgid "" +"Open Project Manager? \n" +"(Unsaved changes will be lost)" +msgstr "" +"Θέλετε να ανοίξετε τον διαχειριστή έργου; \n" +"(Οι μη αποθηκευμένες αλλαγές θα χαθούν)" + +#: editor/editor_node.cpp +msgid "Pick a Main Scene" +msgstr "Επιλογή κύριας σκηνής" + +#: editor/editor_node.cpp +msgid "" +"Scene '%s' was automatically imported, so it can't be modified.\n" +"To make changes to it, a new inherited scene can be created." +msgstr "" + +#: editor/editor_node.cpp editor/plugins/canvas_item_editor_plugin.cpp +#: editor/scene_tree_dock.cpp editor/script_create_dialog.cpp +msgid "Ugh" +msgstr "α..." + +#: editor/editor_node.cpp +msgid "" +"Error loading scene, it must be inside the project path. Use 'Import' to " +"open the scene, then save it inside the project path." +msgstr "" +"Σφάλμα κατά τη φόρτωση της σκηνής, διότι δεν είναι μέσα στη διαδρομή του " +"έργου. Χρησιμοποιήστε την «Εισαγωγή» για να ανοίξετε τη σκηνή και, στη " +"συνέχεια, αποθηκεύστε τη μέσα στη διαδρομή του έργου." + +#: editor/editor_node.cpp +msgid "Error loading scene." +msgstr "Σφάλμα κατά τη φόρτωση σκηνής." + +#: editor/editor_node.cpp +msgid "Scene '%s' has broken dependencies:" +msgstr "Η σκηνή '%s' έχει σπασμένες εξαρτήσεις:" + +#: editor/editor_node.cpp +msgid "Save Layout" +msgstr "Αποθήκευση διάταξης" + +#: editor/editor_node.cpp +msgid "Delete Layout" +msgstr "Διαγραφή διάταξης" + +#: editor/editor_node.cpp +msgid "Switch Scene Tab" +msgstr "Εναλλαγή καρτέλας σκηνής" + +#: editor/editor_node.cpp +msgid "%d more file(s)" +msgstr "%d περισσότερα αρχεία" + +#: editor/editor_node.cpp +msgid "%d more file(s) or folder(s)" +msgstr "%d περισσότερα αρχεία ή φάκελοι" + +#: editor/editor_node.cpp editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Scene" +msgstr "Σκηνή" + +#: editor/editor_node.cpp +msgid "Go to previously opened scene." +msgstr "Πηγαίνετε στη σκηνή ανοίξατε προηγουμένως." + +#: editor/editor_node.cpp +msgid "Next tab" +msgstr "Επόμενη καρτέλα" + +#: editor/editor_node.cpp +msgid "Previous tab" +msgstr "Προηγούμενη καρτέλα" + +#: editor/editor_node.cpp +#, fuzzy +msgid "Filter Files.." +msgstr "Γρήγορο φιλτράρισμα αρχείων..." + +#: editor/editor_node.cpp +msgid "Operations with scene files." +msgstr "Πράξεις με αρχεία σκηνής." + +#: editor/editor_node.cpp +msgid "New Scene" +msgstr "Νέα σκηνή" + +#: editor/editor_node.cpp +msgid "New Inherited Scene.." +msgstr "Νέα κληρονομημένη σκηνή.." + +#: editor/editor_node.cpp +msgid "Open Scene.." +msgstr "Άνοιγμα σκηνής.." + +#: editor/editor_node.cpp +msgid "Save Scene" +msgstr "Αποθηκεύσετε σκηνής" + +#: editor/editor_node.cpp +msgid "Save all Scenes" +msgstr "Αποθήκευση όλων των σκηνών" + +#: editor/editor_node.cpp +msgid "Close Scene" +msgstr "Κλείσιμο σκηνής" + +#: editor/editor_node.cpp +msgid "Close Goto Prev. Scene" +msgstr "Κλείσιμο και μετάβαση στην προηγούμενη σκηνή" + +#: editor/editor_node.cpp +msgid "Open Recent" +msgstr "Άνοιγμα πρόσφατων" + +#: editor/editor_node.cpp +msgid "Convert To.." +msgstr "Μετατροπή σε..." + +#: editor/editor_node.cpp +msgid "MeshLibrary.." +msgstr "Βιβλιοθήκη mesh..." + +#: editor/editor_node.cpp +msgid "TileSet.." +msgstr "TileSet..." + +#: editor/editor_node.cpp editor/plugins/script_text_editor.cpp +#: editor/plugins/shader_editor_plugin.cpp scene/gui/line_edit.cpp +#: scene/gui/text_edit.cpp +msgid "Undo" +msgstr "Αναίρεση" + +#: editor/editor_node.cpp editor/plugins/script_text_editor.cpp +#: editor/plugins/shader_editor_plugin.cpp +msgid "Redo" +msgstr "Ακύρωση αναίρεσης" + +#: editor/editor_node.cpp +msgid "Run Script" +msgstr "Εκτέλεση script" + +#: editor/editor_node.cpp +msgid "Project Settings" +msgstr "Ρυθμίσεις έργου" + +#: editor/editor_node.cpp +msgid "Revert Scene" +msgstr "Επαναφορά σκηνής" + +#: editor/editor_node.cpp +msgid "Quit to Project List" +msgstr "Έξοδος στη λίστα έργων" + +#: editor/editor_node.cpp +msgid "Distraction Free Mode" +msgstr "Λειτουργία χωρίς διάσπαση προσοχής" + +#: editor/editor_node.cpp +msgid "Import assets to the project." +msgstr "Εισαγωγή πόρων στο έργο." + +#: editor/editor_node.cpp editor/io_plugins/editor_bitmask_import_plugin.cpp +#: editor/io_plugins/editor_font_import_plugin.cpp +#: editor/io_plugins/editor_mesh_import_plugin.cpp +#: editor/io_plugins/editor_sample_import_plugin.cpp +#: editor/io_plugins/editor_scene_import_plugin.cpp +#: editor/io_plugins/editor_texture_import_plugin.cpp +#: editor/io_plugins/editor_translation_import_plugin.cpp +#: editor/project_manager.cpp +msgid "Import" +msgstr "Εισαγωγή" + +#: editor/editor_node.cpp +msgid "Miscellaneous project or scene-wide tools." +msgstr "Λοιπά έργα ή εργαλεία για όλη τη σκηνή." + +#: editor/editor_node.cpp +msgid "Tools" +msgstr "Εργαλεία" + +#: editor/editor_node.cpp +msgid "Export the project to many platforms." +msgstr "Εξαγωγή έργου σε πολλές πλατφόρμες." + +#: editor/editor_node.cpp editor/project_export.cpp +msgid "Export" +msgstr "Εξαγωγή" + +#: editor/editor_node.cpp +msgid "Play the project." +msgstr "Αναπαραγωγή του έργου." + +#: editor/editor_node.cpp editor/plugins/sample_library_editor_plugin.cpp +msgid "Play" +msgstr "Αναπαραγωγή" + +#: editor/editor_node.cpp +msgid "Pause the scene" +msgstr "Παύση της σκηνής" + +#: editor/editor_node.cpp +msgid "Pause Scene" +msgstr "Παύση της σκηνής" + +#: editor/editor_node.cpp +msgid "Stop the scene." +msgstr "Διέκοψε τη σκηνή." + +#: editor/editor_node.cpp editor/plugins/sample_library_editor_plugin.cpp +msgid "Stop" +msgstr "Διακοπή" + +#: editor/editor_node.cpp +msgid "Play the edited scene." +msgstr "Αναπαραγωγή επεξεργαζόμενης σκηνής." + +#: editor/editor_node.cpp +msgid "Play Scene" +msgstr "Αναπαραγωγή σκηνής" + +#: editor/editor_node.cpp +msgid "Play custom scene" +msgstr "Αναπαραγωγή προσαρμοσμένης σκηνής" + +#: editor/editor_node.cpp +msgid "Play Custom Scene" +msgstr "Αναπαραγωγή προσαρμοσμένης σκηνής" + +#: editor/editor_node.cpp +msgid "Debug options" +msgstr "Επιλογές εντοπισμού σφαλμάτων" + +#: editor/editor_node.cpp +msgid "Deploy with Remote Debug" +msgstr "Ανέπτυξε με απομακρυσμένο εντοπισμό σφαλμάτων" + +#: editor/editor_node.cpp +msgid "" +"When exporting or deploying, the resulting executable will attempt to " +"connect to the IP of this computer in order to be debugged." +msgstr "" +"Όταν εξάγετε ή αναπτύσσετε, το παραγόμενο εκτελέσιμο θα προσπαθήσει να " +"συνδεθεί στην IP αυτού του υπολογιστή για να αποσφαλματωθεί." + +#: editor/editor_node.cpp +msgid "Small Deploy with Network FS" +msgstr "Μικρή ανάπτυξη με δικτυωμένο σύστημα αρχείων" + +#: editor/editor_node.cpp +msgid "" +"When this option is enabled, export or deploy will produce a minimal " +"executable.\n" +"The filesystem will be provided from the project by the editor over the " +"network.\n" +"On Android, deploy will use the USB cable for faster performance. This " +"option speeds up testing for games with a large footprint." +msgstr "" +"Όταν ενεργοποιείται αυτή η επιλογή, η εξαγωγή ή η ανάπτυξη θα παράξουν ένα " +"ελαχιστοποιημένο εκτελέσιμο.\n" +"Το σύστημα αρχείων θα διατεθεί από τον επεξεργαστή μέσω του διαδικτύου.\n" +"Στο Android, η ανάπτυξη θα χρησιμοποιήσει το καλώδιο USB για μεγαλύτερη " +"απόδοση. Αυτή η επιλογή επιταχύνει τις δοκιμές για παιχνίδια με μεγάλο " +"αποτύπωμα." + +#: editor/editor_node.cpp +msgid "Visible Collision Shapes" +msgstr "Ορατά σχήματα σύγκρουσης" + +#: editor/editor_node.cpp +msgid "" +"Collision shapes and raycast nodes (for 2D and 3D) will be visible on the " +"running game if this option is turned on." +msgstr "" +"Σχήματα σύγκρουσης και κόμβοι raycast (για 2D και 3D) θα είναι ορατά στο " +"παιχνίδι εάν αυτή η επιλογή είναι ενεργοποιημένη." + +#: editor/editor_node.cpp +msgid "Visible Navigation" +msgstr "Ορατή πλοήγηση" + +#: editor/editor_node.cpp +msgid "" +"Navigation meshes and polygons will be visible on the running game if this " +"option is turned on." +msgstr "" +"Πλέγματα πλοήγησης και πολύγονα θα είναι ορατά στο παιχνίδι εάν αυτή η " +"επιλογή είναι ενεργοποιημένη." + +#: editor/editor_node.cpp +msgid "Sync Scene Changes" +msgstr "Συγχρονισμός αλλαγών στη σκηνή" + +#: editor/editor_node.cpp +msgid "" +"When this option is turned on, any changes made to the scene in the editor " +"will be replicated in the running game.\n" +"When used remotely on a device, this is more efficient with network " +"filesystem." +msgstr "" +"Όταν αυτή η επιλογή είναι ενεργοποιημένη, ό,τι αλλαγές γίνουν στη σκηνή θα " +"αναπαραχθούν και στο παιχνίδι.\n" +"Όταν χρησιμοποιηθεί απομακρυσμένα σε μία συσκευή, αυτό είναι ποιο " +"αποτελεσματικό με δικτυωμένο σύστημα αρχείων." + +#: editor/editor_node.cpp +msgid "Sync Script Changes" +msgstr "Συγχρονισμός αλλαγών στα script" + +#: editor/editor_node.cpp +msgid "" +"When this option is turned on, any script that is saved will be reloaded on " +"the running game.\n" +"When used remotely on a device, this is more efficient with network " +"filesystem." +msgstr "" +"Όταν αυτή η επιλογή είναι ενεργοποιημένη, όποιο script αποθηκευτεί θα " +"επαναφορτωθεί στο παιχνίδι.\n" +"Όταν χρησιμοποιηθεί απομακρυσμένα σε μία συσκευή, αυτό είναι ποιο " +"αποτελεσματικό με δικτυωμένο σύστημα αρχείων." + +#: editor/editor_node.cpp editor/plugins/spatial_editor_plugin.cpp +msgid "Settings" +msgstr "Ρυθμίσεις" + +#: editor/editor_node.cpp editor/settings_config_dialog.cpp +msgid "Editor Settings" +msgstr "Ρυθμίσεις επεξεργαστή" + +#: editor/editor_node.cpp +msgid "Editor Layout" +msgstr "Διάταξη επεξεργαστή" + +#: editor/editor_node.cpp +msgid "Toggle Fullscreen" +msgstr "Εναλλαγή πλήρους οθόνης" + +#: editor/editor_node.cpp editor/project_export.cpp +#, fuzzy +msgid "Manage Export Templates" +msgstr "Φόρτωση προτύπων εξαγωγής" + +#: editor/editor_node.cpp +msgid "About" +msgstr "Σχετικά" + +#: editor/editor_node.cpp +msgid "Alerts when an external resource has changed." +msgstr "Ειδοποίηση όταν ένας εξωτερικός πόρος έχει αλλάξει." + +#: editor/editor_node.cpp +msgid "Spins when the editor window repaints!" +msgstr "Περιστρέφεται όταν το παράθυρο του επεξεργαστή επαναχρωματίζεται!" + +#: editor/editor_node.cpp +msgid "Update Always" +msgstr "Ενημέρωση πάντα" + +#: editor/editor_node.cpp +msgid "Update Changes" +msgstr "Ενημέρωση αλλαγών" + +#: editor/editor_node.cpp +msgid "Disable Update Spinner" +msgstr "Απενεργοποίηση δείκτη ενημέρωσης" + +#: editor/editor_node.cpp +msgid "Inspector" +msgstr "Επιθεωρητής" + +#: editor/editor_node.cpp +msgid "Create a new resource in memory and edit it." +msgstr "Δημιούργησε έναν νέο πόρο στη μνήμη και επεξεργάσου τον." + +#: editor/editor_node.cpp +msgid "Load an existing resource from disk and edit it." +msgstr "Φόρτωσε υπάρχων πόρο στη μνήμη και επεξεργάσου τον." + +#: editor/editor_node.cpp +msgid "Save the currently edited resource." +msgstr "Αποθήκευσε το τρέχων επεξεργαζόμενο πόρο." + +#: editor/editor_node.cpp editor/plugins/script_editor_plugin.cpp +msgid "Save As.." +msgstr "Αποθήκευση ως..." + +#: editor/editor_node.cpp +msgid "Go to the previous edited object in history." +msgstr "Πήγαινε στο προηγουμένως επεξεργασμένο αντικείμενο στο ιστορικό." + +#: editor/editor_node.cpp +msgid "Go to the next edited object in history." +msgstr "Πήγαινε στο επόμενο επεξεργασμένο αντικείμενο στο ιστορικό." + +#: editor/editor_node.cpp +msgid "History of recently edited objects." +msgstr "Ιστορικό προσφάτως επεξεργασμένων αντικειμένων." + +#: editor/editor_node.cpp +msgid "Object properties." +msgstr "Ιδιότητες αντικειμένου." + +#: editor/editor_node.cpp +msgid "FileSystem" +msgstr "Σύστημα αρχείων" + +#: editor/editor_node.cpp editor/node_dock.cpp +msgid "Node" +msgstr "Κόμβος" + +#: editor/editor_node.cpp +msgid "Output" +msgstr "Έξοδος" + +#: editor/editor_node.cpp editor/editor_reimport_dialog.cpp +msgid "Re-Import" +msgstr "Επανεισαγωγή" + +#: editor/editor_node.cpp editor/editor_plugin_settings.cpp +msgid "Update" +msgstr "Ενημέρωση" + +#: editor/editor_node.cpp +msgid "Thanks from the Godot community!" +msgstr "Ευχαριστίες από την κοινότητα της Godot!" + +#: editor/editor_node.cpp +msgid "Thanks!" +msgstr "Ευχαριστώ!" + +#: editor/editor_node.cpp +msgid "Import Templates From ZIP File" +msgstr "Εισαγωγή προτύπων από αρχείο ZIP" + +#: editor/editor_node.cpp +msgid "Export Project" +msgstr "Εξαγωγή έργου" + +#: editor/editor_node.cpp +msgid "Export Library" +msgstr "Εξαγωγή βιβλιοθήκης" + +#: editor/editor_node.cpp +msgid "Merge With Existing" +msgstr "Συγχώνευση με υπάρχων" + +#: editor/editor_node.cpp +msgid "Password:" +msgstr "Κωδικός:" + +#: editor/editor_node.cpp +msgid "Open & Run a Script" +msgstr "Άνοιξε & Τρέξε ένα script" + +#: editor/editor_node.cpp +msgid "Load Errors" +msgstr "" + +#: editor/editor_plugin_settings.cpp +msgid "Installed Plugins:" +msgstr "" + +#: editor/editor_plugin_settings.cpp +msgid "Version:" +msgstr "" + +#: editor/editor_plugin_settings.cpp +msgid "Author:" +msgstr "" + +#: editor/editor_plugin_settings.cpp +msgid "Status:" +msgstr "" + +#: editor/editor_profiler.cpp +msgid "Stop Profiling" +msgstr "" + +#: editor/editor_profiler.cpp +msgid "Start Profiling" +msgstr "" + +#: editor/editor_profiler.cpp +msgid "Measure:" +msgstr "" + +#: editor/editor_profiler.cpp +msgid "Frame Time (sec)" +msgstr "" + +#: editor/editor_profiler.cpp +msgid "Average Time (sec)" +msgstr "" + +#: editor/editor_profiler.cpp +msgid "Frame %" +msgstr "" + +#: editor/editor_profiler.cpp +msgid "Fixed Frame %" +msgstr "" + +#: editor/editor_profiler.cpp editor/script_editor_debugger.cpp +msgid "Time:" +msgstr "" + +#: editor/editor_profiler.cpp +msgid "Inclusive" +msgstr "" + +#: editor/editor_profiler.cpp +msgid "Self" +msgstr "" + +#: editor/editor_profiler.cpp +msgid "Frame #:" +msgstr "" + +#: editor/editor_reimport_dialog.cpp +msgid "Please wait for scan to complete." +msgstr "" + +#: editor/editor_reimport_dialog.cpp +msgid "Current scene must be saved to re-import." +msgstr "" + +#: editor/editor_reimport_dialog.cpp +msgid "Save & Re-Import" +msgstr "" + +#: editor/editor_reimport_dialog.cpp +msgid "Re-Importing" +msgstr "Επανεισαγωγή" + +#: editor/editor_reimport_dialog.cpp +msgid "Re-Import Changed Resources" +msgstr "" + +#: editor/editor_run_script.cpp +msgid "Write your logic in the _run() method." +msgstr "" + +#: editor/editor_run_script.cpp +msgid "There is an edited scene already." +msgstr "" + +#: editor/editor_run_script.cpp +msgid "Couldn't instance script:" +msgstr "" + +#: editor/editor_run_script.cpp +msgid "Did you forget the 'tool' keyword?" +msgstr "" + +#: editor/editor_run_script.cpp +msgid "Couldn't run script:" +msgstr "" + +#: editor/editor_run_script.cpp +msgid "Did you forget the '_run' method?" +msgstr "" + +#: editor/editor_settings.cpp +msgid "Default (Same as Editor)" +msgstr "" + +#: editor/editor_sub_scene.cpp +msgid "Select Node(s) to Import" +msgstr "" + +#: editor/editor_sub_scene.cpp +msgid "Scene Path:" +msgstr "" + +#: editor/editor_sub_scene.cpp +msgid "Import From Node:" +msgstr "" + +#: editor/export_template_manager.cpp +msgid "Re-Download" +msgstr "" + +#: editor/export_template_manager.cpp +msgid "Uninstall" +msgstr "" + +#: editor/export_template_manager.cpp +msgid "(Installed)" +msgstr "" + +#: editor/export_template_manager.cpp +msgid "Download" +msgstr "" + +#: editor/export_template_manager.cpp +msgid "(Missing)" +msgstr "" + +#: editor/export_template_manager.cpp +msgid "(Current)" +msgstr "" + +#: editor/export_template_manager.cpp +msgid "Remove template version '%s'?" +msgstr "" + +#: editor/export_template_manager.cpp +msgid "Can't open export templates zip." +msgstr "Αδύνατο το άνοιγμα του zip των προτύπων εξαγωγής." + +#: editor/export_template_manager.cpp +msgid "Invalid version.txt format inside templates." +msgstr "" + +#: editor/export_template_manager.cpp +msgid "" +"Invalid version.txt format inside templates. Revision is not a valid " +"identifier." +msgstr "" + +#: editor/export_template_manager.cpp +msgid "No version.txt found inside templates." +msgstr "" + +#: editor/export_template_manager.cpp +#, fuzzy +msgid "Error creating path for templates:\n" +msgstr "Σφάλμα κατά την αποθήκευση άτλαντα:" + +#: editor/export_template_manager.cpp +#, fuzzy +msgid "Extracting Export Templates" +msgstr "Φόρτωση προτύπων εξαγωγής" + +#: editor/export_template_manager.cpp +msgid "Importing:" +msgstr "Εισαγωγή:" + +#: editor/export_template_manager.cpp +msgid "Loading Export Templates" +msgstr "Φόρτωση προτύπων εξαγωγής" + +#: editor/export_template_manager.cpp +msgid "Current Version:" +msgstr "" + +#: editor/export_template_manager.cpp +msgid "Installed Versions:" +msgstr "" + +#: editor/export_template_manager.cpp +msgid "Install From File" +msgstr "" + +#: editor/export_template_manager.cpp +#, fuzzy +msgid "Remove Template" +msgstr "Αφαίρεση επιλογής" + +#: editor/export_template_manager.cpp +#, fuzzy +msgid "Select template file" +msgstr "Διαγραφή επιλεγμένων αρχείων;" + +#: editor/export_template_manager.cpp +#, fuzzy +msgid "Export Template Manager" +msgstr "Φόρτωση προτύπων εξαγωγής" + +#: editor/file_type_cache.cpp +msgid "Can't open file_type_cache.cch for writing, not saving file type cache!" +msgstr "" + +#: editor/filesystem_dock.cpp +msgid "Cannot navigate to '" +msgstr "" + +#: editor/filesystem_dock.cpp +msgid "Same source and destination files, doing nothing." +msgstr "" + +#: editor/filesystem_dock.cpp +msgid "Same source and destination paths, doing nothing." +msgstr "" + +#: editor/filesystem_dock.cpp +msgid "Can't move directories to within themselves." +msgstr "" + +#: editor/filesystem_dock.cpp +msgid "Can't operate on '..'" +msgstr "" + +#: editor/filesystem_dock.cpp +msgid "Pick New Name and Location For:" +msgstr "" + +#: editor/filesystem_dock.cpp +msgid "No files selected!" +msgstr "" + +#: editor/filesystem_dock.cpp +msgid "Expand all" +msgstr "" + +#: editor/filesystem_dock.cpp +msgid "Collapse all" +msgstr "" + +#: editor/filesystem_dock.cpp +msgid "Instance" +msgstr "" + +#: editor/filesystem_dock.cpp +msgid "Edit Dependencies.." +msgstr "" + +#: editor/filesystem_dock.cpp +msgid "View Owners.." +msgstr "" + +#: editor/filesystem_dock.cpp +msgid "Copy Path" +msgstr "" + +#: editor/filesystem_dock.cpp +msgid "Rename or Move.." +msgstr "" + +#: editor/filesystem_dock.cpp +msgid "Move To.." +msgstr "" + +#: editor/filesystem_dock.cpp +msgid "Info" +msgstr "" + +#: editor/filesystem_dock.cpp +msgid "Show In File Manager" +msgstr "" + +#: editor/filesystem_dock.cpp +msgid "Re-Import.." +msgstr "" + +#: editor/filesystem_dock.cpp +msgid "Previous Directory" +msgstr "" + +#: editor/filesystem_dock.cpp +msgid "Next Directory" +msgstr "" + +#: editor/filesystem_dock.cpp +msgid "Re-Scan Filesystem" +msgstr "" + +#: editor/filesystem_dock.cpp +msgid "Toggle folder status as Favorite" +msgstr "" + +#: editor/filesystem_dock.cpp +msgid "Instance the selected scene(s) as child of the selected node." +msgstr "" + +#: editor/filesystem_dock.cpp +msgid "Move" +msgstr "" + +#: editor/groups_editor.cpp +msgid "Add to Group" +msgstr "" + +#: editor/groups_editor.cpp +msgid "Remove from Group" +msgstr "" + +#: editor/import/resource_importer_obj.cpp +#: editor/io_plugins/editor_mesh_import_plugin.cpp +msgid "Surface %d" +msgstr "" + +#: editor/import/resource_importer_scene.cpp +#: editor/io_plugins/editor_scene_import_plugin.cpp +#: editor/plugins/cube_grid_theme_editor_plugin.cpp +msgid "Import Scene" +msgstr "" + +#: editor/import/resource_importer_scene.cpp +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Importing Scene.." +msgstr "" + +#: editor/import/resource_importer_scene.cpp +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Running Custom Script.." +msgstr "" + +#: editor/import/resource_importer_scene.cpp +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Couldn't load post-import script:" +msgstr "" + +#: editor/import/resource_importer_scene.cpp +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Invalid/broken script for post-import (check console):" +msgstr "" + +#: editor/import/resource_importer_scene.cpp +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Error running post-import script:" +msgstr "" + +#: editor/import/resource_importer_scene.cpp +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Saving.." +msgstr "" + +#: editor/import_dock.cpp +#, fuzzy +msgid " Files" +msgstr "Αρχείο:" + +#: editor/import_dock.cpp +#, fuzzy +msgid "Import As:" +msgstr "Εισαγωγή" + +#: editor/import_dock.cpp editor/property_editor.cpp +msgid "Preset.." +msgstr "" + +#: editor/import_dock.cpp +#, fuzzy +msgid "Reimport" +msgstr "Επανεισαγωγή" + +#: editor/io_plugins/editor_bitmask_import_plugin.cpp +msgid "No bit masks to import!" +msgstr "" + +#: editor/io_plugins/editor_bitmask_import_plugin.cpp +#: editor/io_plugins/editor_sample_import_plugin.cpp +#: editor/io_plugins/editor_scene_import_plugin.cpp +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Target path is empty." +msgstr "" + +#: editor/io_plugins/editor_bitmask_import_plugin.cpp +#: editor/io_plugins/editor_sample_import_plugin.cpp +#: editor/io_plugins/editor_scene_import_plugin.cpp +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Target path must be a complete resource path." +msgstr "" + +#: editor/io_plugins/editor_bitmask_import_plugin.cpp +#: editor/io_plugins/editor_sample_import_plugin.cpp +#: editor/io_plugins/editor_scene_import_plugin.cpp +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Target path must exist." +msgstr "" + +#: editor/io_plugins/editor_bitmask_import_plugin.cpp +#: editor/io_plugins/editor_mesh_import_plugin.cpp +#: editor/io_plugins/editor_sample_import_plugin.cpp +msgid "Save path is empty!" +msgstr "" + +#: editor/io_plugins/editor_bitmask_import_plugin.cpp +msgid "Import BitMasks" +msgstr "" + +#: editor/io_plugins/editor_bitmask_import_plugin.cpp +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Source Texture(s):" +msgstr "" + +#: editor/io_plugins/editor_bitmask_import_plugin.cpp +#: editor/io_plugins/editor_mesh_import_plugin.cpp +#: editor/io_plugins/editor_sample_import_plugin.cpp +#: editor/io_plugins/editor_scene_import_plugin.cpp +#: editor/io_plugins/editor_texture_import_plugin.cpp +#: editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Target Path:" +msgstr "" + +#: editor/io_plugins/editor_bitmask_import_plugin.cpp +#: editor/io_plugins/editor_font_import_plugin.cpp +#: editor/io_plugins/editor_sample_import_plugin.cpp +#: editor/io_plugins/editor_scene_import_plugin.cpp +#: editor/io_plugins/editor_texture_import_plugin.cpp +#: editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Accept" +msgstr "" + +#: editor/io_plugins/editor_bitmask_import_plugin.cpp +msgid "Bit Mask" +msgstr "" + +#: editor/io_plugins/editor_font_import_plugin.cpp +msgid "No source font file!" +msgstr "" + +#: editor/io_plugins/editor_font_import_plugin.cpp +msgid "No target font resource!" +msgstr "" + +#: editor/io_plugins/editor_font_import_plugin.cpp +msgid "" +"Invalid file extension.\n" +"Please use .fnt." +msgstr "" + +#: editor/io_plugins/editor_font_import_plugin.cpp +msgid "Can't load/process source font." +msgstr "" + +#: editor/io_plugins/editor_font_import_plugin.cpp +msgid "Couldn't save font." +msgstr "" + +#: editor/io_plugins/editor_font_import_plugin.cpp +msgid "Source Font:" +msgstr "" + +#: editor/io_plugins/editor_font_import_plugin.cpp +msgid "Source Font Size:" +msgstr "" + +#: editor/io_plugins/editor_font_import_plugin.cpp +msgid "Dest Resource:" +msgstr "" + +#: editor/io_plugins/editor_font_import_plugin.cpp +msgid "The quick brown fox jumps over the lazy dog." +msgstr "" + +#: editor/io_plugins/editor_font_import_plugin.cpp +msgid "Test:" +msgstr "" + +#: editor/io_plugins/editor_font_import_plugin.cpp +#: editor/io_plugins/editor_mesh_import_plugin.cpp +#: editor/io_plugins/editor_sample_import_plugin.cpp +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Options:" +msgstr "" + +#: editor/io_plugins/editor_font_import_plugin.cpp +msgid "Font Import" +msgstr "" + +#: editor/io_plugins/editor_font_import_plugin.cpp +msgid "" +"This file is already a Godot font file, please supply a BMFont type file " +"instead." +msgstr "" + +#: editor/io_plugins/editor_font_import_plugin.cpp +msgid "Failed opening as BMFont file." +msgstr "" + +#: editor/io_plugins/editor_font_import_plugin.cpp +#: scene/resources/dynamic_font.cpp +msgid "Error initializing FreeType." +msgstr "Σφάλμα κατά την αρχικοποίηση του FreeType." + +#: editor/io_plugins/editor_font_import_plugin.cpp +#: scene/resources/dynamic_font.cpp +msgid "Unknown font format." +msgstr "Άγνωστη μορφή γραμματοσειράς." + +#: editor/io_plugins/editor_font_import_plugin.cpp +#: scene/resources/dynamic_font.cpp +msgid "Error loading font." +msgstr "Σφάλμα κατά την φόρτωση της γραμματοσειράς." + +#: editor/io_plugins/editor_font_import_plugin.cpp +#: scene/resources/dynamic_font.cpp +msgid "Invalid font size." +msgstr "Μη έγκυρο μέγεθος γραμματοσειράς." + +#: editor/io_plugins/editor_font_import_plugin.cpp +msgid "Invalid font custom source." +msgstr "" + +#: editor/io_plugins/editor_font_import_plugin.cpp +#: editor/plugins/theme_editor_plugin.cpp +msgid "Font" +msgstr "" + +#: editor/io_plugins/editor_mesh_import_plugin.cpp +msgid "No meshes to import!" +msgstr "" + +#: editor/io_plugins/editor_mesh_import_plugin.cpp +msgid "Single Mesh Import" +msgstr "" + +#: editor/io_plugins/editor_mesh_import_plugin.cpp +msgid "Source Mesh(es):" +msgstr "" + +#: editor/io_plugins/editor_mesh_import_plugin.cpp +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Mesh" +msgstr "" + +#: editor/io_plugins/editor_sample_import_plugin.cpp +msgid "No samples to import!" +msgstr "" + +#: editor/io_plugins/editor_sample_import_plugin.cpp +msgid "Import Audio Samples" +msgstr "" + +#: editor/io_plugins/editor_sample_import_plugin.cpp +msgid "Source Sample(s):" +msgstr "" + +#: editor/io_plugins/editor_sample_import_plugin.cpp +msgid "Audio Sample" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "New Clip" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Animation Options" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Flags" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Bake FPS:" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Optimizer" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Max Linear Error" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Max Angular Error" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Max Angle" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Clips" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Start(s)" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "End(s)" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Loop" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Filters" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Source path is empty." +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Couldn't load post-import script." +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Invalid/broken script for post-import." +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Error importing scene." +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Import 3D Scene" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Source Scene:" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Same as Target Scene" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Shared" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Target Texture Folder:" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Post-Process Script:" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Custom Root Node Type:" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Auto" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Root Node Name:" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "The Following Files are Missing:" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Import Anyway" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp scene/gui/dialogs.cpp +msgid "Cancel" +msgstr "Ακύρωση" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Import & Open" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Edited scene has not been saved, open imported scene anyway?" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Import Image:" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Can't import a file over itself:" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Couldn't localize path: %s (already local)" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "3D Scene Animation" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Uncompressed" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Compress Lossless (PNG)" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Compress Lossy (WebP)" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Compress (VRAM)" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Texture Format" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Texture Compression Quality (WebP):" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Texture Options" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Please specify some files!" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "At least one file needed for Atlas." +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Error importing:" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Only one file is required for large texture." +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Max Texture Size:" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Import Textures for Atlas (2D)" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Cell Size:" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Large Texture" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Import Large Textures (2D)" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Source Texture" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Base Atlas Texture" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Source Texture(s)" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Import Textures for 2D" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Import Textures for 3D" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Import Textures" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "2D Texture" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "3D Texture" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Atlas Texture" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "" +"NOTICE: Importing 2D textures is not mandatory. Just copy png/jpg files to " +"the project." +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Crop empty space." +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Texture" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Import Large Texture" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Load Source Image" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Slicing" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Inserting" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Saving" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Couldn't save large texture:" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Build Atlas For:" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Loading Image:" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Couldn't load image:" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Converting Images" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Cropping Images" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Blitting Images" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Couldn't save atlas image:" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Couldn't save converted texture:" +msgstr "" + +#: editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Invalid source!" +msgstr "" + +#: editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Invalid translation source!" +msgstr "" + +#: editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Column" +msgstr "" + +#: editor/io_plugins/editor_translation_import_plugin.cpp +#: editor/script_create_dialog.cpp +msgid "Language" +msgstr "" + +#: editor/io_plugins/editor_translation_import_plugin.cpp +msgid "No items to import!" +msgstr "" + +#: editor/io_plugins/editor_translation_import_plugin.cpp +msgid "No target path!" +msgstr "" + +#: editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Import Translations" +msgstr "" + +#: editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Couldn't import!" +msgstr "" + +#: editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Import Translation" +msgstr "" + +#: editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Source CSV:" +msgstr "" + +#: editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Ignore First Row" +msgstr "" + +#: editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Compress" +msgstr "" + +#: editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Add to Project (godot.cfg)" +msgstr "" + +#: editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Import Languages:" +msgstr "" + +#: editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Translation" +msgstr "" + +#: editor/multi_node_edit.cpp +msgid "MultiNode Set" +msgstr "" + +#: editor/node_dock.cpp +msgid "Groups" +msgstr "" + +#: editor/node_dock.cpp +msgid "Select a Node to edit Signals and Groups." +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Toggle Autoplay" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "New Animation Name:" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "New Anim" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Change Animation Name:" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +#, fuzzy +msgid "Delete Animation?" +msgstr "Βελτιστοποίηση animation" + +#: editor/plugins/animation_player_editor_plugin.cpp +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Remove Animation" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "ERROR: Invalid animation name!" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "ERROR: Animation name already exists!" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Rename Animation" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Add Animation" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Blend Next Changed" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Change Blend Time" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Load Animation" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Duplicate Animation" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "ERROR: No animation to copy!" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "ERROR: No animation resource on clipboard!" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Pasted Animation" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Paste Animation" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "ERROR: No animation to edit!" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Play selected animation backwards from current pos. (A)" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Play selected animation backwards from end. (Shift+A)" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Stop animation playback. (S)" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Play selected animation from start. (Shift+D)" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Play selected animation from current pos. (D)" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Animation position (in seconds)." +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Scale animation playback globally for the node." +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Create new animation in player." +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Load animation from disk." +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Load an animation from disk." +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Save the current animation" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Display list of animations in player." +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Autoplay on Load" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Edit Target Blend Times" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Animation Tools" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Copy Animation" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Create New Animation" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Animation Name:" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +#: editor/plugins/resource_preloader_editor_plugin.cpp +#: editor/plugins/sample_library_editor_plugin.cpp +#: editor/plugins/sprite_frames_editor_plugin.cpp editor/property_editor.cpp +#: editor/script_create_dialog.cpp +msgid "Error!" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Blend Times:" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Next (Auto Queue):" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Cross-Animation Blend Times" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Animation" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "New name:" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Scale:" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Fade In (s):" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Fade Out (s):" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Blend" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Mix" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Auto Restart:" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Restart (s):" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Random Restart (s):" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Start!" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Amount:" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Blend:" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Blend 0:" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Blend 1:" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "X-Fade Time (s):" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Current:" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Add Input" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Clear Auto-Advance" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Set Auto-Advance" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Delete Input" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Rename" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Animation tree is valid." +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Animation tree is invalid." +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Animation Node" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "OneShot Node" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Mix Node" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Blend2 Node" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Blend3 Node" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Blend4 Node" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "TimeScale Node" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "TimeSeek Node" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Transition Node" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Import Animations.." +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Edit Node Filters" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Filters.." +msgstr "" + +#: editor/plugins/baked_light_baker.cpp +msgid "Parsing %d Triangles:" +msgstr "" + +#: editor/plugins/baked_light_baker.cpp +msgid "Triangle #" +msgstr "" + +#: editor/plugins/baked_light_baker.cpp +msgid "Light Baker Setup:" +msgstr "" + +#: editor/plugins/baked_light_baker.cpp +msgid "Parsing Geometry" +msgstr "" + +#: editor/plugins/baked_light_baker.cpp +msgid "Fixing Lights" +msgstr "" + +#: editor/plugins/baked_light_baker.cpp +msgid "Making BVH" +msgstr "" + +#: editor/plugins/baked_light_baker.cpp +msgid "Creating Light Octree" +msgstr "" + +#: editor/plugins/baked_light_baker.cpp +msgid "Creating Octree Texture" +msgstr "" + +#: editor/plugins/baked_light_baker.cpp +msgid "Transfer to Lightmaps:" +msgstr "" + +#: editor/plugins/baked_light_baker.cpp +msgid "Allocating Texture #" +msgstr "" + +#: editor/plugins/baked_light_baker.cpp +msgid "Baking Triangle #" +msgstr "" + +#: editor/plugins/baked_light_baker.cpp +msgid "Post-Processing Texture #" +msgstr "" + +#: editor/plugins/baked_light_editor_plugin.cpp +msgid "Bake!" +msgstr "" + +#: editor/plugins/baked_light_editor_plugin.cpp +msgid "Reset the lightmap octree baking process (start over)." +msgstr "" + +#: editor/plugins/camera_editor_plugin.cpp +#: editor/plugins/sample_library_editor_plugin.cpp +msgid "Preview" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Configure Snap" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Grid Offset:" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Grid Step:" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Rotation Offset:" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Rotation Step:" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Move Pivot" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Move Action" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Edit IK Chain" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Edit CanvasItem" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Change Anchors" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Zoom (%):" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Paste Pose" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Select Mode" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Drag: Rotate" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Alt+Drag: Move" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Press 'v' to Change Pivot, 'Shift+v' to Drag Pivot (while moving)." +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Alt+RMB: Depth list selection" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Move Mode" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Rotate Mode" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +#: editor/plugins/spatial_editor_plugin.cpp +msgid "" +"Show a list of all objects at the position clicked\n" +"(same as Alt+RMB in select mode)." +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Click to change object's rotation pivot." +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Pan Mode" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Lock the selected object in place (can't be moved)." +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Unlock the selected object (can be moved)." +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Makes sure the object's children are not selectable." +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Restores the object's children's ability to be selected." +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +#: editor/plugins/polygon_2d_editor_plugin.cpp +#: editor/plugins/script_text_editor.cpp +#: editor/plugins/shader_editor_plugin.cpp editor/project_manager.cpp +#: modules/visual_script/visual_script_editor.cpp +msgid "Edit" +msgstr "Επεξεργασία" + +#: editor/plugins/canvas_item_editor_plugin.cpp +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Use Snap" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Show Grid" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Use Rotation Snap" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Snap Relative" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Configure Snap.." +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Use Pixel Snap" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Expand to Parent" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Skeleton.." +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Make Bones" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Clear Bones" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Show Bones" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Make IK Chain" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Clear IK Chain" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +#: editor/plugins/spatial_editor_plugin.cpp +msgid "View" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Zoom Reset" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Zoom Set.." +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Center Selection" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Frame Selection" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Anchor" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Insert Keys" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Insert Key" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Insert Key (Existing Tracks)" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Copy Pose" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Clear Pose" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Set a Value" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Snap (Pixels):" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Add %s" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Adding %s..." +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp editor/scene_tree_dock.cpp +msgid "Create Node" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp editor/scene_tree_dock.cpp +msgid "Error instancing scene from %s" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp editor/scene_tree_dock.cpp +msgid "OK :(" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp editor/scene_tree_dock.cpp +msgid "No parent to instance a child at." +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp editor/scene_tree_dock.cpp +msgid "This operation requires a single selected node." +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Change default type" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp editor/scene_tree_dock.cpp +#: scene/gui/dialogs.cpp +msgid "OK" +msgstr "Εντάξει" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "" +"Drag & drop + Shift : Add node as sibling\n" +"Drag & drop + Alt : Change node type" +msgstr "" + +#: editor/plugins/collision_polygon_2d_editor_plugin.cpp +#: editor/plugins/light_occluder_2d_editor_plugin.cpp +#: editor/plugins/navigation_polygon_editor_plugin.cpp +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Create Poly" +msgstr "" + +#: editor/plugins/collision_polygon_2d_editor_plugin.cpp +#: editor/plugins/collision_polygon_editor_plugin.cpp +#: editor/plugins/light_occluder_2d_editor_plugin.cpp +#: editor/plugins/navigation_polygon_editor_plugin.cpp +#: editor/plugins/path_2d_editor_plugin.cpp +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Edit Poly" +msgstr "" + +#: editor/plugins/collision_polygon_2d_editor_plugin.cpp +#: editor/plugins/collision_polygon_editor_plugin.cpp +#: editor/plugins/light_occluder_2d_editor_plugin.cpp +#: editor/plugins/navigation_polygon_editor_plugin.cpp +#: editor/plugins/path_2d_editor_plugin.cpp +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Edit Poly (Remove Point)" +msgstr "" + +#: editor/plugins/collision_polygon_2d_editor_plugin.cpp +#: editor/plugins/light_occluder_2d_editor_plugin.cpp +#: editor/plugins/navigation_polygon_editor_plugin.cpp +msgid "Create a new polygon from scratch." +msgstr "" + +#: editor/plugins/collision_polygon_editor_plugin.cpp +msgid "Create Poly3D" +msgstr "" + +#: editor/plugins/collision_shape_2d_editor_plugin.cpp +msgid "Set Handle" +msgstr "" + +#: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp +msgid "Add/Remove Color Ramp Point" +msgstr "" + +#: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Modify Color Ramp" +msgstr "" + +#: editor/plugins/cube_grid_theme_editor_plugin.cpp +msgid "Creating Mesh Library" +msgstr "" + +#: editor/plugins/cube_grid_theme_editor_plugin.cpp +msgid "Thumbnail.." +msgstr "" + +#: editor/plugins/cube_grid_theme_editor_plugin.cpp +msgid "Remove item %d?" +msgstr "" + +#: editor/plugins/cube_grid_theme_editor_plugin.cpp +#: editor/plugins/theme_editor_plugin.cpp +#: editor/plugins/tile_set_editor_plugin.cpp +msgid "Add Item" +msgstr "" + +#: editor/plugins/cube_grid_theme_editor_plugin.cpp +msgid "Remove Selected Item" +msgstr "" + +#: editor/plugins/cube_grid_theme_editor_plugin.cpp +msgid "Import from Scene" +msgstr "" + +#: editor/plugins/cube_grid_theme_editor_plugin.cpp +msgid "Update from Scene" +msgstr "" + +#: editor/plugins/curve_editor_plugin.cpp +msgid "Modify Curve" +msgstr "" + +#: editor/plugins/item_list_editor_plugin.cpp +msgid "Item %d" +msgstr "" + +#: editor/plugins/item_list_editor_plugin.cpp +msgid "Items" +msgstr "" + +#: editor/plugins/item_list_editor_plugin.cpp +msgid "Item List Editor" +msgstr "" + +#: editor/plugins/light_occluder_2d_editor_plugin.cpp +msgid "Create Occluder Polygon" +msgstr "" + +#: editor/plugins/light_occluder_2d_editor_plugin.cpp +#: editor/plugins/navigation_polygon_editor_plugin.cpp +msgid "Edit existing polygon:" +msgstr "" + +#: editor/plugins/light_occluder_2d_editor_plugin.cpp +#: editor/plugins/navigation_polygon_editor_plugin.cpp +msgid "LMB: Move Point." +msgstr "" + +#: editor/plugins/light_occluder_2d_editor_plugin.cpp +#: editor/plugins/navigation_polygon_editor_plugin.cpp +msgid "Ctrl+LMB: Split Segment." +msgstr "" + +#: editor/plugins/light_occluder_2d_editor_plugin.cpp +#: editor/plugins/navigation_polygon_editor_plugin.cpp +msgid "RMB: Erase Point." +msgstr "" + +#: editor/plugins/line_2d_editor_plugin.cpp +msgid "Remove Point from Line2D" +msgstr "" + +#: editor/plugins/line_2d_editor_plugin.cpp +#, fuzzy +msgid "Add Point to Line2D" +msgstr "Πήγαινε στη γραμμή" + +#: editor/plugins/line_2d_editor_plugin.cpp +msgid "Move Point in Line2D" +msgstr "" + +#: editor/plugins/line_2d_editor_plugin.cpp +#: editor/plugins/path_2d_editor_plugin.cpp +#: editor/plugins/path_editor_plugin.cpp +msgid "Select Points" +msgstr "" + +#: editor/plugins/line_2d_editor_plugin.cpp +#: editor/plugins/path_2d_editor_plugin.cpp +#: editor/plugins/path_editor_plugin.cpp +msgid "Shift+Drag: Select Control Points" +msgstr "" + +#: editor/plugins/line_2d_editor_plugin.cpp +#: editor/plugins/path_2d_editor_plugin.cpp +#: editor/plugins/path_editor_plugin.cpp +msgid "Click: Add Point" +msgstr "" + +#: editor/plugins/line_2d_editor_plugin.cpp +#: editor/plugins/path_2d_editor_plugin.cpp +#: editor/plugins/path_editor_plugin.cpp +msgid "Right Click: Delete Point" +msgstr "" + +#: editor/plugins/line_2d_editor_plugin.cpp +#: editor/plugins/path_2d_editor_plugin.cpp +#: editor/plugins/path_editor_plugin.cpp +msgid "Add Point (in empty space)" +msgstr "" + +#: editor/plugins/line_2d_editor_plugin.cpp +msgid "Split Segment (in line)" +msgstr "" + +#: editor/plugins/line_2d_editor_plugin.cpp +#: editor/plugins/path_2d_editor_plugin.cpp +#: editor/plugins/path_editor_plugin.cpp +msgid "Delete Point" +msgstr "" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Mesh is empty!" +msgstr "" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Static Trimesh Body" +msgstr "" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Static Convex Body" +msgstr "" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "This doesn't work on scene root!" +msgstr "" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Trimesh Shape" +msgstr "" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Convex Shape" +msgstr "" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Navigation Mesh" +msgstr "" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "MeshInstance lacks a Mesh!" +msgstr "" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Mesh has not surface to create outlines from!" +msgstr "" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Could not create outline!" +msgstr "" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Outline" +msgstr "" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Trimesh Static Body" +msgstr "" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Convex Static Body" +msgstr "" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Trimesh Collision Sibling" +msgstr "" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Convex Collision Sibling" +msgstr "" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Outline Mesh.." +msgstr "" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Outline Mesh" +msgstr "" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Outline Size:" +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "No mesh source specified (and no MultiMesh set in node)." +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "No mesh source specified (and MultiMesh contains no Mesh)." +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Mesh source is invalid (invalid path)." +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Mesh source is invalid (not a MeshInstance)." +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Mesh source is invalid (contains no Mesh resource)." +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "No surface source specified." +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Surface source is invalid (invalid path)." +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Surface source is invalid (no geometry)." +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Surface source is invalid (no faces)." +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Parent has no solid faces to populate." +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Couldn't map area." +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Select a Source Mesh:" +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Select a Target Surface:" +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Populate Surface" +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Populate MultiMesh" +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Target Surface:" +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Source Mesh:" +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "X-Axis" +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Y-Axis" +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Z-Axis" +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Mesh Up Axis:" +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Random Rotation:" +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Random Tilt:" +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Random Scale:" +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Populate" +msgstr "" + +#: editor/plugins/navigation_polygon_editor_plugin.cpp +msgid "Create Navigation Polygon" +msgstr "" + +#: editor/plugins/navigation_polygon_editor_plugin.cpp +msgid "Remove Poly And Point" +msgstr "" + +#: editor/plugins/particles_2d_editor_plugin.cpp +msgid "Error loading image:" +msgstr "" + +#: editor/plugins/particles_2d_editor_plugin.cpp +msgid "No pixels with transparency > 128 in image.." +msgstr "" + +#: editor/plugins/particles_2d_editor_plugin.cpp +msgid "Set Emission Mask" +msgstr "" + +#: editor/plugins/particles_2d_editor_plugin.cpp +msgid "Clear Emission Mask" +msgstr "" + +#: editor/plugins/particles_2d_editor_plugin.cpp +msgid "Load Emission Mask" +msgstr "" + +#: editor/plugins/particles_2d_editor_plugin.cpp +msgid "Generated Point Count:" +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp +msgid "Node does not contain geometry." +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp +msgid "Node does not contain geometry (faces)." +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp +msgid "A processor material of type 'ParticlesMaterial' is required." +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp +msgid "Faces contain no area!" +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp +msgid "No faces!" +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp +msgid "Generate AABB" +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp +msgid "Create Emission Points From Mesh" +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp +msgid "Create Emission Points From Node" +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp +msgid "Clear Emitter" +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp +msgid "Create Emitter" +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp +msgid "Emission Points:" +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp +msgid "Surface Points" +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp +msgid "Surface Points+Normal (Directed)" +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp +msgid "Volume" +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp +msgid "Emission Source: " +msgstr "" + +#: editor/plugins/path_2d_editor_plugin.cpp +msgid "Remove Point from Curve" +msgstr "" + +#: editor/plugins/path_2d_editor_plugin.cpp +#: editor/plugins/path_editor_plugin.cpp +msgid "Add Point to Curve" +msgstr "" + +#: editor/plugins/path_2d_editor_plugin.cpp +msgid "Move Point in Curve" +msgstr "" + +#: editor/plugins/path_2d_editor_plugin.cpp +msgid "Move In-Control in Curve" +msgstr "" + +#: editor/plugins/path_2d_editor_plugin.cpp +msgid "Move Out-Control in Curve" +msgstr "" + +#: editor/plugins/path_2d_editor_plugin.cpp +msgid "Select Control Points (Shift+Drag)" +msgstr "" + +#: editor/plugins/path_2d_editor_plugin.cpp +#: editor/plugins/path_editor_plugin.cpp +msgid "Split Segment (in curve)" +msgstr "" + +#: editor/plugins/path_2d_editor_plugin.cpp +#: editor/plugins/path_editor_plugin.cpp +msgid "Close Curve" +msgstr "" + +#: editor/plugins/path_editor_plugin.cpp +msgid "Curve Point #" +msgstr "" + +#: editor/plugins/path_editor_plugin.cpp +msgid "Set Curve Point Pos" +msgstr "" + +#: editor/plugins/path_editor_plugin.cpp +msgid "Set Curve In Pos" +msgstr "" + +#: editor/plugins/path_editor_plugin.cpp +msgid "Set Curve Out Pos" +msgstr "" + +#: editor/plugins/path_editor_plugin.cpp +msgid "Split Path" +msgstr "" + +#: editor/plugins/path_editor_plugin.cpp +msgid "Remove Path Point" +msgstr "" + +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Create UV Map" +msgstr "" + +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Transform UV Map" +msgstr "" + +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Polygon 2D UV Editor" +msgstr "" + +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Move Point" +msgstr "" + +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Ctrl: Rotate" +msgstr "" + +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Shift: Move All" +msgstr "" + +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Shift+Ctrl: Scale" +msgstr "" + +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Move Polygon" +msgstr "" + +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Rotate Polygon" +msgstr "" + +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Scale Polygon" +msgstr "" + +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Polygon->UV" +msgstr "" + +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "UV->Polygon" +msgstr "" + +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Clear UV" +msgstr "" + +#: editor/plugins/polygon_2d_editor_plugin.cpp +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Snap" +msgstr "" + +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Enable Snap" +msgstr "" + +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Grid" +msgstr "" + +#: editor/plugins/resource_preloader_editor_plugin.cpp +msgid "ERROR: Couldn't load resource!" +msgstr "" + +#: editor/plugins/resource_preloader_editor_plugin.cpp +msgid "Add Resource" +msgstr "" + +#: editor/plugins/resource_preloader_editor_plugin.cpp +msgid "Rename Resource" +msgstr "" + +#: editor/plugins/resource_preloader_editor_plugin.cpp +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Delete Resource" +msgstr "" + +#: editor/plugins/resource_preloader_editor_plugin.cpp +msgid "Resource clipboard is empty!" +msgstr "" + +#: editor/plugins/resource_preloader_editor_plugin.cpp +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Load Resource" +msgstr "" + +#: editor/plugins/resource_preloader_editor_plugin.cpp +#: editor/plugins/script_text_editor.cpp +#: editor/plugins/shader_editor_plugin.cpp +#: editor/plugins/sprite_frames_editor_plugin.cpp editor/property_editor.cpp +#: editor/resources_dock.cpp scene/gui/line_edit.cpp scene/gui/text_edit.cpp +msgid "Paste" +msgstr "Επικόληση" + +#: editor/plugins/rich_text_editor_plugin.cpp +msgid "Parse BBCode" +msgstr "" + +#: editor/plugins/sample_editor_plugin.cpp +msgid "Length:" +msgstr "" + +#: editor/plugins/sample_library_editor_plugin.cpp +msgid "Open Sample File(s)" +msgstr "" + +#: editor/plugins/sample_library_editor_plugin.cpp +msgid "ERROR: Couldn't load sample!" +msgstr "" + +#: editor/plugins/sample_library_editor_plugin.cpp +msgid "Add Sample" +msgstr "" + +#: editor/plugins/sample_library_editor_plugin.cpp +msgid "Rename Sample" +msgstr "" + +#: editor/plugins/sample_library_editor_plugin.cpp +msgid "Delete Sample" +msgstr "" + +#: editor/plugins/sample_library_editor_plugin.cpp +msgid "16 Bits" +msgstr "" + +#: editor/plugins/sample_library_editor_plugin.cpp +msgid "8 Bits" +msgstr "" + +#: editor/plugins/sample_library_editor_plugin.cpp +msgid "Stereo" +msgstr "" + +#: editor/plugins/sample_library_editor_plugin.cpp +msgid "Mono" +msgstr "" + +#: editor/plugins/sample_library_editor_plugin.cpp +#: editor/script_editor_debugger.cpp +msgid "Format" +msgstr "" + +#: editor/plugins/sample_library_editor_plugin.cpp +msgid "Pitch" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Error while saving theme" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Error saving" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Error importing theme" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Error importing" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Import Theme" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Save Theme As.." +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Next script" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Previous script" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "File" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp editor/property_editor.cpp +msgid "New" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Save All" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Soft Reload Script" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "History Prev" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "History Next" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Reload Theme" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Save Theme" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Save Theme As" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Close Docs" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Close All" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +#: editor/plugins/script_text_editor.cpp +#: editor/plugins/shader_editor_plugin.cpp +msgid "Find.." +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +#: editor/plugins/script_text_editor.cpp +#: editor/plugins/shader_editor_plugin.cpp +msgid "Find Next" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Debug" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp editor/script_editor_debugger.cpp +msgid "Step Over" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp editor/script_editor_debugger.cpp +msgid "Step Into" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp editor/script_editor_debugger.cpp +msgid "Break" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp editor/script_editor_debugger.cpp +msgid "Continue" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Keep Debugger Open" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Window" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Move Left" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Move Right" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Tutorials" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Open https://godotengine.org at tutorials section." +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Classes" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Search the class hierarchy." +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Search the reference documentation." +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Go to previous edited document." +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Go to next edited document." +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +#, fuzzy +msgid "Discard" +msgstr "Ξεχωριστή" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Create Script" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "" +"The following files are newer on disk.\n" +"What action should be taken?:" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Reload" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Resave" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp editor/script_editor_debugger.cpp +msgid "Debugger" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "" +"Built-in scripts can only be edited when the scene they belong to is loaded" +msgstr "" + +#: editor/plugins/script_text_editor.cpp +msgid "Pick Color" +msgstr "" + +#: editor/plugins/script_text_editor.cpp +#: editor/plugins/shader_editor_plugin.cpp scene/gui/line_edit.cpp +#: scene/gui/text_edit.cpp +msgid "Cut" +msgstr "Αποκοπή" + +#: editor/plugins/script_text_editor.cpp +#: editor/plugins/shader_editor_plugin.cpp editor/property_editor.cpp +#: editor/resources_dock.cpp scene/gui/line_edit.cpp scene/gui/text_edit.cpp +msgid "Copy" +msgstr "Αντιγραφή" + +#: editor/plugins/script_text_editor.cpp +#: editor/plugins/shader_editor_plugin.cpp scene/gui/line_edit.cpp +#: scene/gui/text_edit.cpp +msgid "Select All" +msgstr "Επιλογή όλων" + +#: editor/plugins/script_text_editor.cpp editor/scene_tree_dock.cpp +msgid "Move Up" +msgstr "" + +#: editor/plugins/script_text_editor.cpp editor/scene_tree_dock.cpp +msgid "Move Down" +msgstr "" + +#: editor/plugins/script_text_editor.cpp +msgid "Indent Left" +msgstr "" + +#: editor/plugins/script_text_editor.cpp +msgid "Indent Right" +msgstr "" + +#: editor/plugins/script_text_editor.cpp +msgid "Toggle Comment" +msgstr "" + +#: editor/plugins/script_text_editor.cpp +msgid "Clone Down" +msgstr "" + +#: editor/plugins/script_text_editor.cpp +msgid "Complete Symbol" +msgstr "" + +#: editor/plugins/script_text_editor.cpp +msgid "Trim Trailing Whitespace" +msgstr "" + +#: editor/plugins/script_text_editor.cpp +msgid "Auto Indent" +msgstr "" + +#: editor/plugins/script_text_editor.cpp +#: modules/visual_script/visual_script_editor.cpp +msgid "Toggle Breakpoint" +msgstr "Εναλλαγή σημείου διακοπής" + +#: editor/plugins/script_text_editor.cpp +msgid "Remove All Breakpoints" +msgstr "" + +#: editor/plugins/script_text_editor.cpp +msgid "Goto Next Breakpoint" +msgstr "" + +#: editor/plugins/script_text_editor.cpp +msgid "Goto Previous Breakpoint" +msgstr "" + +#: editor/plugins/script_text_editor.cpp +#: editor/plugins/shader_editor_plugin.cpp +msgid "Find Previous" +msgstr "" + +#: editor/plugins/script_text_editor.cpp +#: editor/plugins/shader_editor_plugin.cpp +msgid "Replace.." +msgstr "" + +#: editor/plugins/script_text_editor.cpp +msgid "Goto Function.." +msgstr "" + +#: editor/plugins/script_text_editor.cpp +#: editor/plugins/shader_editor_plugin.cpp +msgid "Goto Line.." +msgstr "" + +#: editor/plugins/script_text_editor.cpp +msgid "Contextual Help" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Scalar Constant" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Vec Constant" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change RGB Constant" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Scalar Operator" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Vec Operator" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Vec Scalar Operator" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change RGB Operator" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Toggle Rot Only" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Scalar Function" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Vec Function" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Scalar Uniform" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Vec Uniform" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change RGB Uniform" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Default Value" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change XForm Uniform" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Texture Uniform" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Cubemap Uniform" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Comment" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Add/Remove to Color Ramp" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Add/Remove to Curve Map" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Modify Curve Map" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Input Name" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Connect Graph Nodes" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Disconnect Graph Nodes" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Remove Shader Graph Node" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Move Shader Graph Node" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Duplicate Graph Node(s)" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Delete Shader Graph Node(s)" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Error: Cyclic Connection Link" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Error: Missing Input Connections" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Add Shader Graph Node" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Orthogonal" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Perspective" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Transform Aborted." +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "X-Axis Transform." +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Y-Axis Transform." +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Z-Axis Transform." +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "View Plane Transform." +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Scaling to %s%%." +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Rotating %s degrees." +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Bottom View." +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Bottom" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Top View." +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Top" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Rear View." +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Rear" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Front View." +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Front" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Left View." +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Left" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Right View." +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Right" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Keying is disabled (no key inserted)." +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Animation Key Inserted." +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Align with view" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Environment" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Audio Listener" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Gizmos" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "XForm Dialog" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "No scene selected to instance!" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Instance at Cursor" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Could not instance scene!" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Move Mode (W)" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Rotate Mode (E)" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Scale Mode (R)" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Bottom View" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Top View" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Rear View" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Front View" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Left View" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Right View" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Switch Perspective/Orthogonal view" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Insert Animation Key" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Focus Origin" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Focus Selection" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Align Selection With View" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Transform" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Local Coords" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Transform Dialog.." +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Use Default Light" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Use Default sRGB" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "1 Viewport" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "2 Viewports" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "2 Viewports (Alt)" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "3 Viewports" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "3 Viewports (Alt)" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "4 Viewports" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Display Normal" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Display Wireframe" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Display Overdraw" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Display Shadeless" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "View Origin" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "View Grid" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Snap Settings" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Translate Snap:" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Rotate Snap (deg.):" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Scale Snap (%):" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Viewport Settings" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Default Light Normal:" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Ambient Light Color:" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Perspective FOV (deg.):" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "View Z-Near:" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "View Z-Far:" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Transform Change" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Translate:" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Rotate (deg.):" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Scale (ratio):" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Transform Type" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Pre" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Post" +msgstr "" + +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "ERROR: Couldn't load frame resource!" +msgstr "" + +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Add Frame" +msgstr "" + +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Resource clipboard is empty or not a texture!" +msgstr "" + +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Paste Frame" +msgstr "" + +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Add Empty" +msgstr "" + +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Change Animation Loop" +msgstr "" + +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Change Animation FPS" +msgstr "" + +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "(empty)" +msgstr "" + +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Animations" +msgstr "" + +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Speed (FPS):" +msgstr "" + +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Animation Frames" +msgstr "" + +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Insert Empty (Before)" +msgstr "" + +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Insert Empty (After)" +msgstr "" + +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Up" +msgstr "" + +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Down" +msgstr "" + +#: editor/plugins/style_box_editor_plugin.cpp +msgid "StyleBox Preview:" +msgstr "" + +#: editor/plugins/texture_region_editor_plugin.cpp +msgid "Snap Mode:" +msgstr "" + +#: editor/plugins/texture_region_editor_plugin.cpp +msgid "<None>" +msgstr "" + +#: editor/plugins/texture_region_editor_plugin.cpp +msgid "Pixel Snap" +msgstr "" + +#: editor/plugins/texture_region_editor_plugin.cpp +msgid "Grid Snap" +msgstr "" + +#: editor/plugins/texture_region_editor_plugin.cpp +msgid "Auto Slice" +msgstr "" + +#: editor/plugins/texture_region_editor_plugin.cpp +msgid "Offset:" +msgstr "" + +#: editor/plugins/texture_region_editor_plugin.cpp +msgid "Step:" +msgstr "" + +#: editor/plugins/texture_region_editor_plugin.cpp +msgid "Separation:" +msgstr "" + +#: editor/plugins/texture_region_editor_plugin.cpp +msgid "Texture Region" +msgstr "" + +#: editor/plugins/texture_region_editor_plugin.cpp +msgid "Texture Region Editor" +msgstr "" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Can't save theme to file:" +msgstr "" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Add All Items" +msgstr "" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Add All" +msgstr "" + +#: editor/plugins/theme_editor_plugin.cpp +#: editor/plugins/tile_set_editor_plugin.cpp +msgid "Remove Item" +msgstr "" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Theme" +msgstr "" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Add Class Items" +msgstr "" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Remove Class Items" +msgstr "" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Create Empty Template" +msgstr "" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Create Empty Editor Template" +msgstr "" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "CheckBox Radio1" +msgstr "" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "CheckBox Radio2" +msgstr "" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Item" +msgstr "" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Check Item" +msgstr "" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Checked Item" +msgstr "" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Has" +msgstr "" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Many" +msgstr "" + +#: editor/plugins/theme_editor_plugin.cpp editor/project_export.cpp +msgid "Options" +msgstr "" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Have,Many,Several,Options!" +msgstr "" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Tab 1" +msgstr "" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Tab 2" +msgstr "" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Tab 3" +msgstr "" + +#: editor/plugins/theme_editor_plugin.cpp editor/project_settings.cpp +#: editor/scene_tree_editor.cpp editor/script_editor_debugger.cpp +msgid "Type:" +msgstr "" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Data Type:" +msgstr "" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Icon" +msgstr "" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Style" +msgstr "" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Color" +msgstr "" + +#: editor/plugins/tile_map_editor_plugin.cpp +msgid "Paint TileMap" +msgstr "" + +#: editor/plugins/tile_map_editor_plugin.cpp editor/scene_tree_dock.cpp +msgid "Duplicate" +msgstr "" + +#: editor/plugins/tile_map_editor_plugin.cpp +msgid "Erase TileMap" +msgstr "" + +#: editor/plugins/tile_map_editor_plugin.cpp +msgid "Erase selection" +msgstr "" + +#: editor/plugins/tile_map_editor_plugin.cpp +msgid "Find tile" +msgstr "" + +#: editor/plugins/tile_map_editor_plugin.cpp +msgid "Transpose" +msgstr "" + +#: editor/plugins/tile_map_editor_plugin.cpp +msgid "Mirror X" +msgstr "" + +#: editor/plugins/tile_map_editor_plugin.cpp +msgid "Mirror Y" +msgstr "" + +#: editor/plugins/tile_map_editor_plugin.cpp +msgid "Bucket" +msgstr "" + +#: editor/plugins/tile_map_editor_plugin.cpp +msgid "Pick Tile" +msgstr "" + +#: editor/plugins/tile_map_editor_plugin.cpp +msgid "Select" +msgstr "" + +#: editor/plugins/tile_map_editor_plugin.cpp +msgid "Rotate 0 degrees" +msgstr "" + +#: editor/plugins/tile_map_editor_plugin.cpp +msgid "Rotate 90 degrees" +msgstr "" + +#: editor/plugins/tile_map_editor_plugin.cpp +msgid "Rotate 180 degrees" +msgstr "" + +#: editor/plugins/tile_map_editor_plugin.cpp +msgid "Rotate 270 degrees" +msgstr "" + +#: editor/plugins/tile_set_editor_plugin.cpp +msgid "Could not find tile:" +msgstr "" + +#: editor/plugins/tile_set_editor_plugin.cpp +msgid "Item name or ID:" +msgstr "" + +#: editor/plugins/tile_set_editor_plugin.cpp +msgid "Create from scene?" +msgstr "" + +#: editor/plugins/tile_set_editor_plugin.cpp +msgid "Merge from scene?" +msgstr "" + +#: editor/plugins/tile_set_editor_plugin.cpp +msgid "Create from Scene" +msgstr "" + +#: editor/plugins/tile_set_editor_plugin.cpp +msgid "Merge from Scene" +msgstr "" + +#: editor/plugins/tile_set_editor_plugin.cpp editor/script_editor_debugger.cpp +msgid "Error" +msgstr "" + +#: editor/project_export.cpp +#, fuzzy +msgid "Runnable" +msgstr "Ενεργοποίηση" + +#: editor/project_export.cpp +#, fuzzy +msgid "Delete patch '" +msgstr "Διαγραφή διάταξης" + +#: editor/project_export.cpp +#, fuzzy +msgid "Delete preset '%s'?" +msgstr "Διαγραφή επιλεγμένων αρχείων;" + +#: editor/project_export.cpp +msgid "Presets" +msgstr "" + +#: editor/project_export.cpp editor/project_settings.cpp +msgid "Add.." +msgstr "" + +#: editor/project_export.cpp +msgid "Resources" +msgstr "" + +#: editor/project_export.cpp +#, fuzzy +msgid "Export all resources in the project" +msgstr "Εισαγωγή πόρων στο έργο." + +#: editor/project_export.cpp +msgid "Export selected scenes (and dependencies)" +msgstr "" + +#: editor/project_export.cpp +msgid "Export selected resources (and dependencies)" +msgstr "" + +#: editor/project_export.cpp +msgid "Export Mode:" +msgstr "" + +#: editor/project_export.cpp +msgid "Resources to export:" +msgstr "" + +#: editor/project_export.cpp +msgid "" +"Filters to export non-resource files (comma separated, e.g: *.json, *.txt)" +msgstr "" + +#: editor/project_export.cpp +msgid "" +"Filters to exclude files from project (comma separated, e.g: *.json, *.txt)" +msgstr "" + +#: editor/project_export.cpp +#, fuzzy +msgid "Patches" +msgstr "Αντιστοιχίες:" + +#: editor/project_export.cpp +msgid "Make Patch" +msgstr "" + +#: editor/project_export.cpp +msgid "Export templates for this platform are missing:" +msgstr "" + +#: editor/project_export.cpp +#, fuzzy +msgid "Export With Debug" +msgstr "Εξαγωγή σετ πλακιδίων" + +#: editor/project_manager.cpp +msgid "Invalid project path, the path must exist!" +msgstr "" + +#: editor/project_manager.cpp +msgid "Invalid project path, godot.cfg must not exist." +msgstr "" + +#: editor/project_manager.cpp +msgid "Invalid project path, godot.cfg must exist." +msgstr "" + +#: editor/project_manager.cpp +msgid "Imported Project" +msgstr "" + +#: editor/project_manager.cpp +msgid "Invalid project path (changed anything?)." +msgstr "" + +#: editor/project_manager.cpp +msgid "Couldn't create godot.cfg in project path." +msgstr "" + +#: editor/project_manager.cpp +msgid "The following files failed extraction from package:" +msgstr "" + +#: editor/project_manager.cpp +msgid "Package Installed Successfully!" +msgstr "" + +#: editor/project_manager.cpp +msgid "Import Existing Project" +msgstr "" + +#: editor/project_manager.cpp +msgid "Project Path (Must Exist):" +msgstr "" + +#: editor/project_manager.cpp +msgid "Project Name:" +msgstr "" + +#: editor/project_manager.cpp +msgid "Create New Project" +msgstr "" + +#: editor/project_manager.cpp +msgid "Project Path:" +msgstr "" + +#: editor/project_manager.cpp +msgid "Install Project:" +msgstr "" + +#: editor/project_manager.cpp +msgid "Install" +msgstr "" + +#: editor/project_manager.cpp +msgid "Browse" +msgstr "" + +#: editor/project_manager.cpp +msgid "New Game Project" +msgstr "" + +#: editor/project_manager.cpp +msgid "That's a BINGO!" +msgstr "" + +#: editor/project_manager.cpp +msgid "Unnamed Project" +msgstr "" + +#: editor/project_manager.cpp +msgid "Are you sure to open more than one project?" +msgstr "" + +#: editor/project_manager.cpp +msgid "Are you sure to run more than one project?" +msgstr "" + +#: editor/project_manager.cpp +msgid "Remove project from the list? (Folder contents will not be modified)" +msgstr "" + +#: editor/project_manager.cpp +msgid "" +"You are about the scan %s folders for existing Godot projects. Do you " +"confirm?" +msgstr "" + +#: editor/project_manager.cpp +msgid "Project Manager" +msgstr "" + +#: editor/project_manager.cpp +msgid "Project List" +msgstr "" + +#: editor/project_manager.cpp +msgid "Run" +msgstr "" + +#: editor/project_manager.cpp +msgid "Scan" +msgstr "" + +#: editor/project_manager.cpp +msgid "Select a Folder to Scan" +msgstr "" + +#: editor/project_manager.cpp +msgid "New Project" +msgstr "" + +#: editor/project_manager.cpp +msgid "Exit" +msgstr "" + +#: editor/project_settings.cpp +msgid "Key " +msgstr "" + +#: editor/project_settings.cpp +msgid "Joy Button" +msgstr "" + +#: editor/project_settings.cpp +msgid "Joy Axis" +msgstr "" + +#: editor/project_settings.cpp +msgid "Mouse Button" +msgstr "" + +#: editor/project_settings.cpp +msgid "Invalid action (anything goes but '/' or ':')." +msgstr "" + +#: editor/project_settings.cpp +msgid "Action '%s' already exists!" +msgstr "" + +#: editor/project_settings.cpp +msgid "Rename Input Action Event" +msgstr "" + +#: editor/project_settings.cpp +msgid "Add Input Action Event" +msgstr "" + +#: editor/project_settings.cpp editor/settings_config_dialog.cpp +#: scene/gui/input_action.cpp +msgid "Meta+" +msgstr "Meta+" + +#: editor/project_settings.cpp editor/settings_config_dialog.cpp +#: scene/gui/input_action.cpp +msgid "Shift+" +msgstr "Shift+" + +#: editor/project_settings.cpp editor/settings_config_dialog.cpp +#: scene/gui/input_action.cpp +msgid "Alt+" +msgstr "Alt+" + +#: editor/project_settings.cpp editor/settings_config_dialog.cpp +msgid "Control+" +msgstr "" + +#: editor/project_settings.cpp editor/settings_config_dialog.cpp +msgid "Press a Key.." +msgstr "" + +#: editor/project_settings.cpp +msgid "Mouse Button Index:" +msgstr "" + +#: editor/project_settings.cpp +msgid "Left Button" +msgstr "" + +#: editor/project_settings.cpp +msgid "Right Button" +msgstr "" + +#: editor/project_settings.cpp +msgid "Middle Button" +msgstr "" + +#: editor/project_settings.cpp +msgid "Wheel Up Button" +msgstr "" + +#: editor/project_settings.cpp +msgid "Wheel Down Button" +msgstr "" + +#: editor/project_settings.cpp +msgid "Button 6" +msgstr "" + +#: editor/project_settings.cpp +msgid "Button 7" +msgstr "" + +#: editor/project_settings.cpp +msgid "Button 8" +msgstr "" + +#: editor/project_settings.cpp +msgid "Button 9" +msgstr "" + +#: editor/project_settings.cpp +msgid "Joypad Axis Index:" +msgstr "" + +#: editor/project_settings.cpp scene/gui/input_action.cpp +msgid "Axis" +msgstr "Άξονας" + +#: editor/project_settings.cpp +msgid "Joypad Button Index:" +msgstr "" + +#: editor/project_settings.cpp +msgid "Add Input Action" +msgstr "" + +#: editor/project_settings.cpp +msgid "Erase Input Action Event" +msgstr "" + +#: editor/project_settings.cpp scene/gui/input_action.cpp +msgid "Device" +msgstr "Συσκευή" + +#: editor/project_settings.cpp scene/gui/input_action.cpp +msgid "Button" +msgstr "Κουμπί" + +#: editor/project_settings.cpp scene/gui/input_action.cpp +msgid "Left Button." +msgstr "Αριστερό κουμπί." + +#: editor/project_settings.cpp scene/gui/input_action.cpp +msgid "Right Button." +msgstr "Δεξί κουμπί." + +#: editor/project_settings.cpp scene/gui/input_action.cpp +msgid "Middle Button." +msgstr "Μεσαίο κουμπί." + +#: editor/project_settings.cpp scene/gui/input_action.cpp +msgid "Wheel Up." +msgstr "Ροδέλα πάνω." + +#: editor/project_settings.cpp scene/gui/input_action.cpp +msgid "Wheel Down." +msgstr "Ροδέλα κάτω." + +#: editor/project_settings.cpp +msgid "Error saving settings." +msgstr "" + +#: editor/project_settings.cpp +msgid "Settings saved OK." +msgstr "" + +#: editor/project_settings.cpp +msgid "Add Translation" +msgstr "" + +#: editor/project_settings.cpp +msgid "Remove Translation" +msgstr "" + +#: editor/project_settings.cpp +msgid "Add Remapped Path" +msgstr "" + +#: editor/project_settings.cpp +msgid "Resource Remap Add Remap" +msgstr "" + +#: editor/project_settings.cpp +msgid "Change Resource Remap Language" +msgstr "" + +#: editor/project_settings.cpp +msgid "Remove Resource Remap" +msgstr "" + +#: editor/project_settings.cpp +msgid "Remove Resource Remap Option" +msgstr "" + +#: editor/project_settings.cpp +#, fuzzy +msgid "Project Settings (godot.cfg)" +msgstr "Ρυθμίσεις έργου" + +#: editor/project_settings.cpp editor/settings_config_dialog.cpp +msgid "General" +msgstr "" + +#: editor/project_settings.cpp editor/property_editor.cpp +msgid "Property:" +msgstr "" + +#: editor/project_settings.cpp +msgid "Del" +msgstr "" + +#: editor/project_settings.cpp +msgid "Copy To Platform.." +msgstr "" + +#: editor/project_settings.cpp +msgid "Input Map" +msgstr "" + +#: editor/project_settings.cpp +msgid "Action:" +msgstr "" + +#: editor/project_settings.cpp +msgid "Device:" +msgstr "" + +#: editor/project_settings.cpp +msgid "Index:" +msgstr "" + +#: editor/project_settings.cpp +msgid "Localization" +msgstr "" + +#: editor/project_settings.cpp +msgid "Translations" +msgstr "" + +#: editor/project_settings.cpp +msgid "Translations:" +msgstr "" + +#: editor/project_settings.cpp +msgid "Remaps" +msgstr "" + +#: editor/project_settings.cpp +msgid "Resources:" +msgstr "" + +#: editor/project_settings.cpp +msgid "Remaps by Locale:" +msgstr "" + +#: editor/project_settings.cpp +msgid "Locale" +msgstr "" + +#: editor/project_settings.cpp +msgid "AutoLoad" +msgstr "" + +#: editor/project_settings.cpp +msgid "Plugins" +msgstr "" + +#: editor/property_editor.cpp +msgid "Pick a Viewport" +msgstr "" + +#: editor/property_editor.cpp +msgid "Ease In" +msgstr "" + +#: editor/property_editor.cpp +msgid "Ease Out" +msgstr "" + +#: editor/property_editor.cpp +msgid "Zero" +msgstr "" + +#: editor/property_editor.cpp +msgid "Easing In-Out" +msgstr "" + +#: editor/property_editor.cpp +msgid "Easing Out-In" +msgstr "" + +#: editor/property_editor.cpp +msgid "File.." +msgstr "" + +#: editor/property_editor.cpp +msgid "Dir.." +msgstr "" + +#: editor/property_editor.cpp +msgid "Assign" +msgstr "" + +#: editor/property_editor.cpp +msgid "New Script" +msgstr "" + +#: editor/property_editor.cpp +#, fuzzy +msgid "Show in File System" +msgstr "Σύστημα αρχείων" + +#: editor/property_editor.cpp +msgid "Error loading file: Not a resource!" +msgstr "" + +#: editor/property_editor.cpp +msgid "Couldn't load image" +msgstr "" + +#: editor/property_editor.cpp +#, fuzzy +msgid "Pick a Node" +msgstr "Επικόλληση κόμβων" + +#: editor/property_editor.cpp +msgid "Bit %d, val %d." +msgstr "" + +#: editor/property_editor.cpp +msgid "On" +msgstr "" + +#: editor/property_editor.cpp modules/visual_script/visual_script_editor.cpp +msgid "Set" +msgstr "Όρισε" + +#: editor/property_editor.cpp +msgid "Properties:" +msgstr "" + +#: editor/property_editor.cpp +msgid "Sections:" +msgstr "" + +#: editor/property_selector.cpp +msgid "Select Property" +msgstr "" + +#: editor/property_selector.cpp +msgid "Select Method" +msgstr "" + +#: editor/pvrtc_compress.cpp +msgid "Could not execute PVRTC tool:" +msgstr "" + +#: editor/pvrtc_compress.cpp +msgid "Can't load back converted image using PVRTC tool:" +msgstr "" + +#: editor/reparent_dialog.cpp editor/scene_tree_dock.cpp +msgid "Reparent Node" +msgstr "" + +#: editor/reparent_dialog.cpp +msgid "Reparent Location (Select new Parent):" +msgstr "" + +#: editor/reparent_dialog.cpp +msgid "Keep Global Transform" +msgstr "" + +#: editor/reparent_dialog.cpp editor/scene_tree_dock.cpp +msgid "Reparent" +msgstr "" + +#: editor/resources_dock.cpp +msgid "Create New Resource" +msgstr "" + +#: editor/resources_dock.cpp +msgid "Open Resource" +msgstr "" + +#: editor/resources_dock.cpp +msgid "Save Resource" +msgstr "" + +#: editor/resources_dock.cpp +msgid "Resource Tools" +msgstr "" + +#: editor/resources_dock.cpp +msgid "Make Local" +msgstr "" + +#: editor/run_settings_dialog.cpp +msgid "Run Mode:" +msgstr "" + +#: editor/run_settings_dialog.cpp +msgid "Current Scene" +msgstr "" + +#: editor/run_settings_dialog.cpp +msgid "Main Scene" +msgstr "" + +#: editor/run_settings_dialog.cpp +msgid "Main Scene Arguments:" +msgstr "" + +#: editor/run_settings_dialog.cpp +msgid "Scene Run Settings" +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "No parent to instance the scenes at." +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Error loading scene from %s" +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Ok" +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "" +"Cannot instance the scene '%s' because the current scene exists within one " +"of its nodes." +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Instance Scene(s)" +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "This operation can't be done on the tree root." +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Move Node In Parent" +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Move Nodes In Parent" +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Duplicate Node(s)" +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Delete Node(s)?" +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "This operation can't be done without a scene." +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Can not perform with the root node." +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "This operation can't be done on instanced scenes." +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Save New Scene As.." +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Makes Sense!" +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Can't operate on nodes from a foreign scene!" +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Can't operate on nodes the current scene inherits from!" +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Remove Node(s)" +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "" +"Couldn't save new scene. Likely dependencies (instances) couldn't be " +"satisfied." +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Error saving scene." +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Error duplicating scene to save it." +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Edit Groups" +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Edit Connections" +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Delete Node(s)" +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Add Child Node" +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Instance Child Scene" +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Change Type" +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Attach Script" +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Clear Script" +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Merge From Scene" +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Save Branch as Scene" +msgstr "" + +#: editor/scene_tree_dock.cpp +#, fuzzy +msgid "Copy Node Path" +msgstr "Αντιγραφή κόμβων" + +#: editor/scene_tree_dock.cpp +msgid "Delete (No Confirm)" +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Add/Create a New Node" +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "" +"Instance a scene file as a Node. Creates an inherited scene if no root node " +"exists." +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Attach a new or existing script for the selected node." +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Clear a script for the selected node." +msgstr "" + +#: editor/scene_tree_editor.cpp +msgid "Toggle Spatial Visible" +msgstr "" + +#: editor/scene_tree_editor.cpp +msgid "Toggle CanvasItem Visible" +msgstr "" + +#: editor/scene_tree_editor.cpp +msgid "Instance:" +msgstr "" + +#: editor/scene_tree_editor.cpp +msgid "Invalid node name, the following characters are not allowed:" +msgstr "" + +#: editor/scene_tree_editor.cpp +msgid "Rename Node" +msgstr "" + +#: editor/scene_tree_editor.cpp +msgid "Scene Tree (Nodes):" +msgstr "" + +#: editor/scene_tree_editor.cpp +msgid "Editable Children" +msgstr "" + +#: editor/scene_tree_editor.cpp +msgid "Load As Placeholder" +msgstr "" + +#: editor/scene_tree_editor.cpp +msgid "Discard Instancing" +msgstr "" + +#: editor/scene_tree_editor.cpp +msgid "Open in Editor" +msgstr "" + +#: editor/scene_tree_editor.cpp +msgid "Clear Inheritance" +msgstr "" + +#: editor/scene_tree_editor.cpp +msgid "Clear Inheritance? (No Undo!)" +msgstr "" + +#: editor/scene_tree_editor.cpp +msgid "Clear!" +msgstr "" + +#: editor/scene_tree_editor.cpp +msgid "Select a Node" +msgstr "" + +#: editor/script_create_dialog.cpp +msgid "Invalid parent class name" +msgstr "" + +#: editor/script_create_dialog.cpp +msgid "Valid chars:" +msgstr "" + +#: editor/script_create_dialog.cpp +msgid "Invalid class name" +msgstr "" + +#: editor/script_create_dialog.cpp +msgid "Valid name" +msgstr "" + +#: editor/script_create_dialog.cpp +msgid "N/A" +msgstr "" + +#: editor/script_create_dialog.cpp +msgid "Class name is invalid!" +msgstr "" + +#: editor/script_create_dialog.cpp +msgid "Parent class name is invalid!" +msgstr "" + +#: editor/script_create_dialog.cpp +msgid "Invalid path!" +msgstr "" + +#: editor/script_create_dialog.cpp +msgid "Could not create script in filesystem." +msgstr "" + +#: editor/script_create_dialog.cpp +msgid "Error loading script from %s" +msgstr "" + +#: editor/script_create_dialog.cpp +msgid "Path is empty" +msgstr "" + +#: editor/script_create_dialog.cpp +msgid "Path is not local" +msgstr "" + +#: editor/script_create_dialog.cpp +msgid "Invalid base path" +msgstr "" + +#: editor/script_create_dialog.cpp +msgid "Invalid extension" +msgstr "" + +#: editor/script_create_dialog.cpp +msgid "Create new script" +msgstr "" + +#: editor/script_create_dialog.cpp +msgid "Load existing script" +msgstr "" + +#: editor/script_create_dialog.cpp +msgid "Class Name:" +msgstr "" + +#: editor/script_create_dialog.cpp +msgid "Built-In Script" +msgstr "" + +#: editor/script_create_dialog.cpp +msgid "Attach Node Script" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Bytes:" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Warning" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Error:" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Source:" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Function:" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Errors" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Child Process Connected" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Inspect Previous Instance" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Inspect Next Instance" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Stack Frames" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Variable" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Errors:" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Stack Trace (if applicable):" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Remote Inspector" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Live Scene Tree:" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Remote Object Properties: " +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Profiler" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Monitor" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Value" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Monitors" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "List of Video Memory Usage by Resource:" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Total:" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Video Mem" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Resource Path" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Type" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Usage" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Misc" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Clicked Control:" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Clicked Control Type:" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Live Edit Root:" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Set From Tree" +msgstr "" + +#: editor/settings_config_dialog.cpp +msgid "Shortcuts" +msgstr "" + +#: editor/spatial_editor_gizmos.cpp +msgid "Change Light Radius" +msgstr "" + +#: editor/spatial_editor_gizmos.cpp +msgid "Change Camera FOV" +msgstr "" + +#: editor/spatial_editor_gizmos.cpp +msgid "Change Camera Size" +msgstr "" + +#: editor/spatial_editor_gizmos.cpp +msgid "Change Sphere Shape Radius" +msgstr "" + +#: editor/spatial_editor_gizmos.cpp +msgid "Change Box Shape Extents" +msgstr "" + +#: editor/spatial_editor_gizmos.cpp +msgid "Change Capsule Shape Radius" +msgstr "" + +#: editor/spatial_editor_gizmos.cpp +msgid "Change Capsule Shape Height" +msgstr "" + +#: editor/spatial_editor_gizmos.cpp +msgid "Change Ray Shape Length" +msgstr "" + +#: editor/spatial_editor_gizmos.cpp +msgid "Change Notifier Extents" +msgstr "" + +#: editor/spatial_editor_gizmos.cpp +msgid "Change Probe Extents" +msgstr "" + +#: modules/gdscript/gd_functions.cpp +#: modules/visual_script/visual_script_builtin_funcs.cpp +msgid "Invalid type argument to convert(), use TYPE_* constants." +msgstr "" +"Μη έγκυρη παράμετρος στην convert(). Χρησιμοποιήστε τις σταθερές TYPE_*." + +#: modules/gdscript/gd_functions.cpp +#: modules/visual_script/visual_script_builtin_funcs.cpp +msgid "Not enough bytes for decoding bytes, or invalid format." +msgstr "Δεν υπάρχουν αρκετά byte για την αποκωδικοποίηση, ή άκυρη μορφή." + +#: modules/gdscript/gd_functions.cpp +msgid "step argument is zero!" +msgstr "Η παράμετρος step είναι μηδέν!" + +#: modules/gdscript/gd_functions.cpp +#, fuzzy +msgid "Not a script with an instance" +msgstr "Δεν είναι script με παρουσία" + +#: modules/gdscript/gd_functions.cpp +#, fuzzy +msgid "Not based on a script" +msgstr "Δεν είναι βασισμένο σε script" + +#: modules/gdscript/gd_functions.cpp +msgid "Not based on a resource file" +msgstr "Δεν βασίζεται σε αρχείο πόρων" + +#: modules/gdscript/gd_functions.cpp +msgid "Invalid instance dictionary format (missing @path)" +msgstr "Άκυρη μορφή λεξικού στιγμιοτύπων (λείπει το @path)" + +#: modules/gdscript/gd_functions.cpp +msgid "Invalid instance dictionary format (can't load script at @path)" +msgstr "" +"Άκυρη μορφή λεξικού στιγμιοτύπων (αδύνατη η φόρτωση του script στο @path)" + +#: modules/gdscript/gd_functions.cpp +msgid "Invalid instance dictionary format (invalid script at @path)" +msgstr "Άκυρη μορφή λεξικού στιγμιοτύπων (άκυρο script στο @path)" + +#: modules/gdscript/gd_functions.cpp +msgid "Invalid instance dictionary (invalid subclasses)" +msgstr "Άκυρη μορφή λεξικού στιγμιοτύπων (άκυρες υπό-κλάσεις)" + +#: modules/visual_script/visual_script.cpp +msgid "" +"A node yielded without working memory, please read the docs on how to yield " +"properly!" +msgstr "" +"Ένας κόμβος παρέδωσε χωρίς μνήμη εργασίας. Διαβάστε τις οδηγίες για τη σωστή " +"λειτουργία του yield!" + +#: modules/visual_script/visual_script.cpp +msgid "" +"Node yielded, but did not return a function state in the first working " +"memory." +msgstr "" +"Ένας κόμβος παρέδωσε (έκανε yield), αλλά δεν επέστρεψε μία κατάσταση " +"συνάρτηση στην πρώτη μνήμη εργασίας." + +#: modules/visual_script/visual_script.cpp +msgid "" +"Return value must be assigned to first element of node working memory! Fix " +"your node please." +msgstr "" +"Η τιμή επιστροφής πρέπει να έχει ανατεθεί στο πρώτο στοιχείο της μνήμης " +"εργασίας του κόμβου! Παρακαλούμε διορθώστε τον κόμβο σας." + +#: modules/visual_script/visual_script.cpp +msgid "Node returned an invalid sequence output: " +msgstr "Ο κόμβος επέστρεψε μία άκυρη ακολουθία ως έξοδο: " + +#: modules/visual_script/visual_script.cpp +msgid "Found sequence bit but not the node in the stack, report bug!" +msgstr "" +"Βρέθηκε το bit της ακολουθίας, αλλά όχι ο κόμβος στη στοίβα. Παρακαλούμε " +"αναφέρετε το bug!" + +#: modules/visual_script/visual_script.cpp +msgid "Stack overflow with stack depth: " +msgstr "Υπερχείλιση στοίβας με βάθος στοίβας: " + +#: modules/visual_script/visual_script_editor.cpp +msgid "Functions:" +msgstr "Συναρτήσεις:" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Variables:" +msgstr "Μεταβλητές:" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Name is not a valid identifier:" +msgstr "Το όνομα δεν είναι έγκυρο αναγνωριστικό:" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Name already in use by another func/var/signal:" +msgstr "Το όνομα χρησιμοποιείται ήδη από μία άλλη συνάρτηση/μεταβλητή/σήμα:" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Rename Function" +msgstr "Μετονομασία συνάρτησης" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Rename Variable" +msgstr "Μετονομασία μεταβλητής" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Rename Signal" +msgstr "Μετονομασία σήματος" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Add Function" +msgstr "Προσθήκη συνάρτησης" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Add Variable" +msgstr "Προσθήκη μεταβλητής" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Add Signal" +msgstr "Προσθήκη σήματος" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Remove Function" +msgstr "Αφαίρεση συνάρτησης" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Remove Variable" +msgstr "Αφαίρεση μεταβλητής" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Editing Variable:" +msgstr "Επεξεργασία μεταβλητής:" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Remove Signal" +msgstr "Αφαίρεση σήματος" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Editing Signal:" +msgstr "Επεξεργασία σήματος:" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Change Expression" +msgstr "Αλλαγή έκφρασης" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Add Node" +msgstr "Προσθήκη κόμβου" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Hold Meta to drop a Getter. Hold Shift to drop a generic signature." +msgstr "" +"Πατήστε παρατεταμένα το κουμπί Meta για να προσθέσετε έναν Getter. Πατήστε " +"παρατεταμένα το Shift για να προσθέσετε μία γενική υπογραφή." + +#: modules/visual_script/visual_script_editor.cpp +msgid "Hold Ctrl to drop a Getter. Hold Shift to drop a generic signature." +msgstr "" +"Πατήστε παρατεταμένα το Ctrl για να προσθέσετε έναν Getter. Πατήστε " +"παρατεταμένα το Shift για να προσθέσετε μία γενική υπογραφή." + +#: modules/visual_script/visual_script_editor.cpp +msgid "Hold Meta to drop a simple reference to the node." +msgstr "" +"Πατήστε παρατεταμένα το κουμπί Meta για να προσθέσετε μία απλή αναφορά στον " +"κόμβο." + +#: modules/visual_script/visual_script_editor.cpp +msgid "Hold Ctrl to drop a simple reference to the node." +msgstr "" +"Πατήστε παρατεταμένα το Ctrl για να προσθέσετε μία απλή αναφορά στον κόμβο." + +#: modules/visual_script/visual_script_editor.cpp +msgid "Hold Meta to drop a Variable Setter." +msgstr "" +"Πατήστε παρατεταμένα το κουμπί Meta για να προσθέσετε έναν Setter μεταβλητής." + +#: modules/visual_script/visual_script_editor.cpp +msgid "Hold Ctrl to drop a Variable Setter." +msgstr "Πατήστε παρατεταμένα το Ctrl για να προσθέσετε έναν Setter μεταβλητής." + +#: modules/visual_script/visual_script_editor.cpp +msgid "Add Preload Node" +msgstr "Προσθέστε έναν κόμβο preload" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Add Node(s) From Tree" +msgstr "Προσθέστε κόμβο/-ους από δέντρο" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Add Getter Property" +msgstr "Προσθέστε ιδιότητα Getter" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Add Setter Property" +msgstr "Προσθέστε ιδιότητα Setter" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Condition" +msgstr "Συνθήκη" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Sequence" +msgstr "Ακολουθία" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Switch" +msgstr "Μεταγωγέας" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Iterator" +msgstr "Επαναλήπτης" + +#: modules/visual_script/visual_script_editor.cpp +msgid "While" +msgstr "Όσο" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Return" +msgstr "Επιστροφή" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Get" +msgstr "Πάρε" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Base Type:" +msgstr "Τύπος βάσης:" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Available Nodes:" +msgstr "Διαθέσιμοι κόμβοι:" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Select or create a function to edit graph" +msgstr "Επιλέξτε ή δημιουργήστε μία συνάρτηση για να επεξεργαστείτε το γράφημα" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Edit Signal Arguments:" +msgstr "Επεξεργασία παραμέτρων σήματος:" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Edit Variable:" +msgstr "Επεξεργασία μεταβλητής:" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Change" +msgstr "Αλλαγή" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Delete Selected" +msgstr "Διαγραφή επιλεγμένου" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Find Node Type" +msgstr "Εύρεση είδους κόμβου" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Copy Nodes" +msgstr "Αντιγραφή κόμβων" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Cut Nodes" +msgstr "Αποκοπή κόμβων" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Paste Nodes" +msgstr "Επικόλληση κόμβων" + +#: modules/visual_script/visual_script_flow_control.cpp +msgid "Input type not iterable: " +msgstr "Δεν μπορεί να γίνει επανάληψη στον εισηγμένο τύπο: " + +#: modules/visual_script/visual_script_flow_control.cpp +msgid "Iterator became invalid" +msgstr "Ο επαναλήπτης έγινε άκυρος" + +#: modules/visual_script/visual_script_flow_control.cpp +msgid "Iterator became invalid: " +msgstr "Ο επαναλήπτης έγινε άκυρος: " + +#: modules/visual_script/visual_script_func_nodes.cpp +msgid "Invalid index property name." +msgstr "Άκυρο όνομα ιδιότητας δείκτη." + +#: modules/visual_script/visual_script_func_nodes.cpp +msgid "Base object is not a Node!" +msgstr "Το βασικό αντικείμενο δεν είναι κόμβος!" + +#: modules/visual_script/visual_script_func_nodes.cpp +msgid "Path does not lead Node!" +msgstr "Η διαδρομή δεν οδηγεί σε κόμβο!" + +#: modules/visual_script/visual_script_func_nodes.cpp +msgid "Invalid index property name '%s' in node %s." +msgstr "Άκυρο όνομα ιδιότητας δείκτη '%s' στον κόμβο %s." + +#: modules/visual_script/visual_script_nodes.cpp +msgid ": Invalid argument of type: " +msgstr ": Άκυρη παράμετρος τύπου: " + +#: modules/visual_script/visual_script_nodes.cpp +msgid ": Invalid arguments: " +msgstr ": Άκυροι παράμετροι: " + +#: modules/visual_script/visual_script_nodes.cpp +msgid "VariableGet not found in script: " +msgstr "Το VariableGet δεν βρέθηκε στο script: " + +#: modules/visual_script/visual_script_nodes.cpp +msgid "VariableSet not found in script: " +msgstr "Το VariableSet δεν βρέθηκε στο script: " + +#: modules/visual_script/visual_script_nodes.cpp +msgid "Custom node has no _step() method, can't process graph." +msgstr "" +"Ο κόμβος δεν έχει τη μέθοδο _step(), αδύνατη η επεξεργασία του γραφήματος." + +#: modules/visual_script/visual_script_nodes.cpp +msgid "" +"Invalid return value from _step(), must be integer (seq out), or string " +"(error)." +msgstr "" +"Άκυρος τύπος επιστροφής από την _step(), πρέπει να είναι ακέραιος (seq out) " +"ή ακολουθία χαρακτήρων (error)." + +#: modules/visual_script/visual_script_nodes.cpp +msgid "just pressed" +msgstr "μόλις πατήθηκε" + +#: modules/visual_script/visual_script_nodes.cpp +msgid "just released" +msgstr "μόλις απελευθερώθηκε" + +#: platform/javascript/export/export.cpp +msgid "Run in Browser" +msgstr "" + +#: platform/javascript/export/export.cpp +msgid "Run exported HTML in the system's default browser." +msgstr "" + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not write file:\n" +msgstr "Αδύνατη η δημιουργία φακέλου." + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not read file:\n" +msgstr "Αδύνατη η δημιουργία φακέλου." + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not open template for export:\n" +msgstr "Αδύνατη η δημιουργία φακέλου." + +#: platform/uwp/export/export.cpp +#, fuzzy +msgid "" +"Couldn't read the certificate file. Are the path and password both correct?" +msgstr "" +"Αδύνατη η ανάγνωση του αρχείου πιστοποιητικών. Είναι η διαδρομή και ο " +"κωδικός σωστοί;" + +#: platform/uwp/export/export.cpp +msgid "Error creating the signature object." +msgstr "Σφάλμα κατά τη δημιουργία της υπογραφής του αντικειμένου." + +#: platform/uwp/export/export.cpp +msgid "Error creating the package signature." +msgstr "Σφάλμα κατά τη δημιουργία της υπογραφής του πακέτου." + +#: platform/uwp/export/export.cpp +msgid "" +"No export templates found.\n" +"Download and install export templates." +msgstr "" +"Δεν βρέθηκαν πρότυπα εξαγωγής.\n" +"Κατεβάστε και εγκαταστήστε τα πρότυπα εξαγωγής." + +#: platform/uwp/export/export.cpp +msgid "Custom debug package not found." +msgstr "Το προσαρμοσμένο πακέτο αποσφαλμάτωσης δεν βρέθηκε." + +#: platform/uwp/export/export.cpp +msgid "Custom release package not found." +msgstr "Το προσαρμοσμένο πακέτο παραγωγής δεν βρέθηκε." + +#: platform/uwp/export/export.cpp +msgid "Invalid unique name." +msgstr "Άκυρο μοναδικό όνομα." + +#: platform/uwp/export/export.cpp +msgid "Invalid product GUID." +msgstr "Άκυρο GUID προϊόντος." + +#: platform/uwp/export/export.cpp +msgid "Invalid publisher GUID." +msgstr "Άκυρο GUID εκδότη." + +#: platform/uwp/export/export.cpp +msgid "Invalid background color." +msgstr "Άκυρο χρώμα παρασκηνίου." + +#: platform/uwp/export/export.cpp +msgid "Invalid Store Logo image dimensions (should be 50x50)." +msgstr "Άκυρη εικόνα λογότυπου καταστήματος (πρέπει να είναι 50x50)." + +#: platform/uwp/export/export.cpp +msgid "Invalid square 44x44 logo image dimensions (should be 44x44)." +msgstr "Άκυρη εικόνα τετράγωνου λογότυπου 44x44 (πρέπει να είναι 44x44)." + +#: platform/uwp/export/export.cpp +msgid "Invalid square 71x71 logo image dimensions (should be 71x71)." +msgstr "Άκυρη εικόνα τετράγωνου λογότυπου 71x71 (πρέπει να είναι 71x71)." + +#: platform/uwp/export/export.cpp +msgid "Invalid square 150x150 logo image dimensions (should be 150x150)." +msgstr "Άκυρη εικόνα τετράγωνου λογότυπου 150x150 (πρέπει να είναι 150x150)." + +#: platform/uwp/export/export.cpp +msgid "Invalid square 310x310 logo image dimensions (should be 310x310)." +msgstr "Άκυρη εικόνα τετράγωνου λογότυπου 310x310 (πρέπει να είναι 310x310)." + +#: platform/uwp/export/export.cpp +msgid "Invalid wide 310x150 logo image dimensions (should be 310x150)." +msgstr "Άκυρη εικόνα ευρύ λογότυπου 310x150 (πρέπει να είναι 310x150)." + +#: platform/uwp/export/export.cpp +msgid "Invalid splash screen image dimensions (should be 620x300)." +msgstr "Άκυρες διαστάσεις εικόνας οθόνης εκκίνησης (πρέπει να είναι 620x300)." + +#: scene/2d/animated_sprite.cpp +msgid "" +"A SpriteFrames resource must be created or set in the 'Frames' property in " +"order for AnimatedSprite to display frames." +msgstr "" +"Ένας πόρος SpriteFrames πρέπει να έχει δημιουργηθεί ή ορισθεί στην ιδιότητα " +"'Frames' για να μπορεί το AnimatedSprite να παρουσιάσει frames." + +#: scene/2d/canvas_modulate.cpp +msgid "" +"Only one visible CanvasModulate is allowed per scene (or set of instanced " +"scenes). The first created one will work, while the rest will be ignored." +msgstr "" +"Μόνο ένα ορατό CanvasModulate επιτρέπεται σε κάθε σκηνή (ή σύνολο " +"στιγμιότυπων σκηνών). Το πρώτο που δημιουργήθηκε θα δουλέψει, ενώ τα άλλα θα " +"αγνοηθούν." + +#: scene/2d/collision_polygon_2d.cpp +msgid "" +"CollisionPolygon2D only serves to provide a collision shape to a " +"CollisionObject2D derived node. Please only use it as a child of Area2D, " +"StaticBody2D, RigidBody2D, KinematicBody2D, etc. to give them a shape." +msgstr "" +"To CollisionPolygon2D υπάρχει μόνο για να δώσει ένα σχήμα σύγκρουσης σε έναν " +"κόμβο που προέρχεται από το CollisionObject2D. Χρησιμοποιήστε το μόνο εάν " +"κληρονομεί τα Area2D, StaticBody2D, RigidBody2D, KinematicBody2D, κλπ, για " +"να τους δώσετε ένα σχήμα." + +#: scene/2d/collision_polygon_2d.cpp +msgid "An empty CollisionPolygon2D has no effect on collision." +msgstr "Ένα άδειο ColisionPollygon2D δεν επηρεάζει τη σύγκρουση." + +#: scene/2d/collision_shape_2d.cpp +msgid "" +"CollisionShape2D only serves to provide a collision shape to a " +"CollisionObject2D derived node. Please only use it as a child of Area2D, " +"StaticBody2D, RigidBody2D, KinematicBody2D, etc. to give them a shape." +msgstr "" +"To CollisionShape2D υπάρχει μόνο για να δώσει ένα σχήμα σύγκρουσης σε έναν " +"κόμβο που προέρχεται από το CollisionObject2D. Χρησιμοποιήστε το μόνο εάν " +"κληρονομεί τα Area2D, StaticBody2D, RigidBody2D, KinematicBody2D, κλπ, για " +"να τους δώσετε ένα σχήμα." + +#: scene/2d/collision_shape_2d.cpp +msgid "" +"A shape must be provided for CollisionShape2D to function. Please create a " +"shape resource for it!" +msgstr "" +"Ένα σχήμα πρέπει να δοθεί στο CollisionShape2D για να λειτουργήσει. " +"Δημιουργήστε ένα πόρο σχήματος για αυτό!" + +#: scene/2d/light_2d.cpp +#, fuzzy +msgid "" +"A texture with the shape of the light must be supplied to the 'texture' " +"property." +msgstr "" +"Μία εικόνα με το σχήμα του φωτός πρέπει να δοθεί στην ιδιότητα 'texture'" + +#: scene/2d/light_occluder_2d.cpp +#, fuzzy +msgid "" +"An occluder polygon must be set (or drawn) for this occluder to take effect." +msgstr "" +"Ένα πολύγωνο occluder πρέπει να οριστεί (ή ζωγραφιστεί) για να λειτουργήσει " +"αυτός ο occluder." + +#: scene/2d/light_occluder_2d.cpp +#, fuzzy +msgid "The occluder polygon for this occluder is empty. Please draw a polygon!" +msgstr "" +"Το πολύγωνο occluder για αυτόν τον occluder είναι άδειο. Ζωγραφίστε ένα " +"πολύγονο!" + +#: scene/2d/navigation_polygon.cpp +msgid "" +"A NavigationPolygon resource must be set or created for this node to work. " +"Please set a property or draw a polygon." +msgstr "" +"Ένας πόρος NavigationPolygon πρέπει να ορισθεί ή δημιουργηθεί για να " +"λειτουργήσει αυτός ο κόμβος. Ορίστε μία ιδιότητα ή ζωγραφίστε ένα πολύγωνο." + +#: scene/2d/navigation_polygon.cpp +msgid "" +"NavigationPolygonInstance must be a child or grandchild to a Navigation2D " +"node. It only provides navigation data." +msgstr "" +"Το NavigationPolygonInstance πρέπει να κληρονομεί έναν κόμβο τύπου " +"Navigation2D, διότι διαθέτει μόνο δεδομένα πλοήγησης." + +#: scene/2d/parallax_layer.cpp +msgid "" +"ParallaxLayer node only works when set as child of a ParallaxBackground node." +msgstr "" +"Ένας κόμβος ParallaxLayer δουλεύει μόνο όταν κληρονομεί έναν κόμβο τύπου " +"ParallaxBackground." + +#: scene/2d/particles_2d.cpp +msgid "Path property must point to a valid Particles2D node to work." +msgstr "" +"Η ιδιότητα Path πρέπει να δείχνει σε έναν έγκυρο κόμβο Particles2D για να " +"δουλέψει." + +#: scene/2d/path_2d.cpp +msgid "PathFollow2D only works when set as a child of a Path2D node." +msgstr "Το PathFollow2D δουλεύει μόνο όταν κληρονομεί έναν κόμβο Path2D." + +#: scene/2d/remote_transform_2d.cpp +msgid "Path property must point to a valid Node2D node to work." +msgstr "" +"Η ιδιότητα Path πρέπει να δείχνει σε έναν έγκυρο κόμβο Node2D για να " +"δουλέψει." + +#: scene/2d/sprite.cpp +msgid "" +"Path property must point to a valid Viewport node to work. Such Viewport " +"must be set to 'render target' mode." +msgstr "" +"Η ιδιότητα Path πρέπει να δείχνει σε έναν έγκυρο κόμβο τύπου Viewport σε " +"λειτουργία 'render target' για να δουλέψει." + +#: scene/2d/sprite.cpp +msgid "" +"The Viewport set in the path property must be set as 'render target' in " +"order for this sprite to work." +msgstr "" +"Το Viewport που ορίστηκε στην ιδιότητα 'path' πρέπει να είναι σε λειτουργία " +"'render target' για να δουλέψει αυτό to sprite." + +#: scene/2d/visibility_notifier_2d.cpp +msgid "" +"VisibilityEnable2D works best when used with the edited scene root directly " +"as parent." +msgstr "" +"Το VisibilityEnable2D δουλεύει καλύτερα όταν χρησιμοποιείται μα την ρίζα της " +"επεξεργασμένης σκηνές κατευθείαν ως γονέας." + +#: scene/3d/body_shape.cpp +msgid "" +"CollisionShape only serves to provide a collision shape to a CollisionObject " +"derived node. Please only use it as a child of Area, StaticBody, RigidBody, " +"KinematicBody, etc. to give them a shape." +msgstr "" +"To CollisionShape υπάρχει μόνο για να δώσει ένα σχήμα σύγκρουσης σε έναν " +"κόμβο που προέρχεται από το CollisionObject. Χρησιμοποιήστε το μόνο εάν " +"κληρονομεί τα Area, StaticBody, RigidBody, KinematicBody, κλπ, για να τους " +"δώσετε ένα σχήμα." + +#: scene/3d/body_shape.cpp +msgid "" +"A shape must be provided for CollisionShape to function. Please create a " +"shape resource for it!" +msgstr "" +"Ένα σχήμα πρέπει να δοθεί στο CollisionShape για να λειτουργήσει. " +"Δημιουργήστε ένα πόρο σχήματος για αυτό!" + +#: scene/3d/collision_polygon.cpp +msgid "" +"CollisionPolygon only serves to provide a collision shape to a " +"CollisionObject derived node. Please only use it as a child of Area, " +"StaticBody, RigidBody, KinematicBody, etc. to give them a shape." +msgstr "" +"To CollisionPolygon υπάρχει μόνο για να δώσει ένα σχήμα σύγκρουσης σε έναν " +"κόμβο που προέρχεται από το CollisionObject. Χρησιμοποιήστε το μόνο εάν " +"κληρονομεί τα Area, StaticBody, RigidBody, KinematicBody, κλπ, για να τους " +"δώσετε ένα σχήμα." + +#: scene/3d/collision_polygon.cpp +msgid "An empty CollisionPolygon has no effect on collision." +msgstr "Ένα άδειο CollisionPolygon δεν επηρεάζει την σύγκρουση." + +#: scene/3d/navigation_mesh.cpp +msgid "A NavigationMesh resource must be set or created for this node to work." +msgstr "" +"Ένας πόρος NavigationMesh πρέπει να έχει ορισθεί ή δημιουργηθεί για να " +"δουλέψει αυτός ο κόμβος." + +#: scene/3d/navigation_mesh.cpp +msgid "" +"NavigationMeshInstance must be a child or grandchild to a Navigation node. " +"It only provides navigation data." +msgstr "" +"Ένας κόμβος NavigationMeshInstance πρέπει να κληρονομεί έναν κόμβο τύπου " +"Navigation, διότι διαθέτει μόνο δεδομένα πλοήγησης." + +#: scene/3d/remote_transform.cpp +msgid "Path property must point to a valid Spatial node to work." +msgstr "" +"Η ιδιότητα Path πρέπει να δείχνει σε έναν έγκυρο κόμβο Spatial για να " +"δουλέψει αυτός ο κόμβος." + +#: scene/3d/scenario_fx.cpp +msgid "" +"Only one WorldEnvironment is allowed per scene (or set of instanced scenes)." +msgstr "" +"Μόνο ένα WorldEnvironment επιτρέπεται σε κάθε σκηνή (ή σύνολο στιγμιοτύπων " +"σκηνών)." + +#: scene/3d/sprite_3d.cpp +msgid "" +"A SpriteFrames resource must be created or set in the 'Frames' property in " +"order for AnimatedSprite3D to display frames." +msgstr "" +"Ένας πόρος SpriteFrames πρέπει να δημιουργηθεί ή ορισθεί στην ιδιότητα " +"'Frames' για να δείξει frames το AnimatedSprite3D." + +#: scene/gui/dialogs.cpp +msgid "Alert!" +msgstr "Ειδοποίηση!" + +#: scene/gui/dialogs.cpp +msgid "Please Confirm..." +msgstr "Παρακαλώ επιβεβαιώστε..." + +#: scene/gui/file_dialog.cpp +msgid "Open a File" +msgstr "Άνοιγμα αρχείου" + +#: scene/gui/file_dialog.cpp +msgid "Open File(s)" +msgstr "Άνοιγμα αρχείου/-ων" + +#: scene/gui/file_dialog.cpp +msgid "Open a Directory" +msgstr "Άνοιγμα λεξικού" + +#: scene/gui/file_dialog.cpp +msgid "Open a File or Directory" +msgstr "Άνοιγμα αρχείου ή λεξικού" + +#: scene/gui/input_action.cpp +msgid "Ctrl+" +msgstr "Ctrl+" + +#: scene/gui/popup.cpp +msgid "" +"Popups will hide by default unless you call popup() or any of the popup*() " +"functions. Making them visible for editing is fine though, but they will " +"hide upon running." +msgstr "" +"Οι κόμβοι τύπου Popup θα είναι κρυμμένοι από προεπιλογή, εκτός κι αν " +"καλέσετε την popup() ή καμία από τις συναρτήσεις popup*(). Το να τους κάνετε " +"ορατούς κατά την επεξεργασία, όμως, δεν είναι πρόβλημα." + +#: scene/gui/scroll_container.cpp +msgid "" +"ScrollContainer is intended to work with a single child control.\n" +"Use a container as child (VBox,HBox,etc), or a Control and set the custom " +"minimum size manually." +msgstr "" + +#: scene/main/viewport.cpp +msgid "" +"This viewport is not set as render target. If you intend for it to display " +"its contents directly to the screen, make it a child of a Control so it can " +"obtain a size. Otherwise, make it a RenderTarget and assign its internal " +"texture to some node for display." +msgstr "" +"Το Viewport δεν έχει ορισθεί ως \"render target'. Αν σκοπεύετε να δείχνει τα " +"περιεχόμενα του, κάντε το να κληρονομεί ένα Control, ώστε να αποκτήσει " +"μέγεθος. Αλλιώς, κάντε το ένα RenderTarget και ορίστε το internal texture σε " +"έναν κόμβο για απεικόνιση." + +#~ msgid "" +#~ "A SampleLibrary resource must be created or set in the 'samples' property " +#~ "in order for SamplePlayer to play sound." +#~ msgstr "" +#~ "Ένας πόρος SampleLibrary πρέπει να έχει δημιουργηθεί ή ορισθεί στην " +#~ "ιδιότητα 'samples' για να παίξει ήχο το SamplePlayer." + +#~ msgid "" +#~ "A SampleLibrary resource must be created or set in the 'samples' property " +#~ "in order for SpatialSamplePlayer to play sound." +#~ msgstr "" +#~ "Ένας πόρος SampleLibrary πρέπει να δημιουργηθεί ή ορισθεί στην ιδιότητα " +#~ "'samples' για να παίξει ήχο το SpatialSamplePlayer." + +#~ msgid "Replaced %d Ocurrence(s)." +#~ msgstr "Αντικαταστάθηκαν %d εμφανίσεις." + +#~ msgid "Please save the scene first." +#~ msgstr "Παρακαλούμε αποθηκεύστε την σκηνή πρώτα." + +#~ msgid "Save Translatable Strings" +#~ msgstr "Αποθήκευση μεταφράσιμων συμβολοσειρών" + +#~ msgid "Translatable Strings.." +#~ msgstr "Μεταφράσιμες συμβολοσειρές..." + +#~ msgid "Install Export Templates" +#~ msgstr "Εγκατάσταση προτύπων εξαγωγής" diff --git a/editor/translations/es.po b/editor/translations/es.po index ac7371e47c..6c9c54d88e 100644 --- a/editor/translations/es.po +++ b/editor/translations/es.po @@ -2,19 +2,19 @@ # Copyright (C) 2016-2017 Juan Linietsky, Ariel Manzur and the Godot community # This file is distributed under the same license as the Godot source code. # +# Alejandro Alvarez <eliluminado00@gmail.com>, 2017. # Carlos López <genetita@gmail.com>, 2016. -# Ismael Ferreras Morezuelas <swyterzone+mame@gmail.com>, 2016. -# Lisandro Lorea <lisandrolorea@gmail.com>, 2016. +# Lisandro Lorea <lisandrolorea@gmail.com>, 2016-2017. # Roger BR <drai_kin@hotmail.com>, 2016. # Sebastian Silva <sebastian@fuentelibre.org>, 2016. -# Swyter <swyterzone@gmail.com>, 2016. +# Swyter <swyterzone@gmail.com>, 2016-2017. # msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2016-11-22 16:41+0000\n" -"Last-Translator: Swyter <swyterzone@gmail.com>\n" +"PO-Revision-Date: 2017-01-16 16:20+0000\n" +"Last-Translator: Lisandro Lorea <lisandrolorea@gmail.com>\n" "Language-Team: Spanish <https://hosted.weblate.org/projects/godot-engine/" "godot/es/>\n" "Language: es\n" @@ -22,7 +22,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 2.10-dev\n" +"X-Generator: Weblate 2.11-dev\n" #: editor/animation_editor.cpp msgid "Disabled" @@ -395,7 +395,7 @@ msgstr "Sitio:" #: editor/asset_library_editor_plugin.cpp msgid "Support.." -msgstr "Ayuda…" +msgstr "Soporte.." #: editor/asset_library_editor_plugin.cpp msgid "Official" @@ -615,7 +615,7 @@ msgstr "Crear suscripción" #: editor/connections_dialog.cpp msgid "Connect.." -msgstr "Conectar…" +msgstr "Conectar.." #: editor/connections_dialog.cpp #: editor/plugins/animation_tree_editor_plugin.cpp @@ -904,11 +904,11 @@ msgstr "Actualizando escena" #: editor/editor_data.cpp msgid "Storing local changes.." -msgstr "Guardando cambios locales…" +msgstr "Guardando cambios locales.." #: editor/editor_data.cpp msgid "Updating scene.." -msgstr "Actualizando escena…" +msgstr "Actualizando escena.." #: editor/editor_dir_dialog.cpp msgid "Choose a Directory" @@ -942,7 +942,7 @@ msgstr "Almacén de archivo:" msgid "Packing" msgstr "Empaquetando" -#: editor/editor_export.cpp +#: editor/editor_export.cpp platform/javascript/export/export.cpp msgid "Template file not found:\n" msgstr "" @@ -2780,8 +2780,9 @@ msgid "Compress" msgstr "Comprimir" #: editor/io_plugins/editor_translation_import_plugin.cpp +#, fuzzy msgid "Add to Project (godot.cfg)" -msgstr "Añadir al proyecto (godot.cfg)" +msgstr "Añadir al proyecto (engine.cfg)" #: editor/io_plugins/editor_translation_import_plugin.cpp msgid "Import Languages:" @@ -3506,11 +3507,13 @@ msgid "Set Handle" msgstr "Establecer handle" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp #, fuzzy msgid "Add/Remove Color Ramp Point" msgstr "Añadir/quitar punto de rampa de color" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp #: editor/plugins/shader_graph_editor_plugin.cpp msgid "Modify Color Ramp" msgstr "Modificar rampa de color" @@ -3545,6 +3548,11 @@ msgstr "Importar desde escena" msgid "Update from Scene" msgstr "Actualizar desde escena" +#: editor/plugins/curve_editor_plugin.cpp +#, fuzzy +msgid "Modify Curve" +msgstr "Modificar Mapa de Curvas" + #: editor/plugins/item_list_editor_plugin.cpp msgid "Item %d" msgstr "Elemento %d" @@ -3856,6 +3864,10 @@ msgid "Node does not contain geometry (faces)." msgstr "El nodo no contiene geometría (caras)." #: editor/plugins/particles_editor_plugin.cpp +msgid "A processor material of type 'ParticlesMaterial' is required." +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp msgid "Faces contain no area!" msgstr "¡Las caras no contienen área!" @@ -3868,11 +3880,13 @@ msgid "Generate AABB" msgstr "Generar AABB" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Mesh" +#, fuzzy +msgid "Create Emission Points From Mesh" msgstr "Crear emisor a partir de modelo" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Node" +#, fuzzy +msgid "Create Emission Points From Node" msgstr "Crear emisor a partir de nodo" #: editor/plugins/particles_editor_plugin.cpp @@ -3884,21 +3898,28 @@ msgid "Create Emitter" msgstr "Crear emisor" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Positions:" +#, fuzzy +msgid "Emission Points:" msgstr "Posiciones de emisión:" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Fill:" -msgstr "Relleno de emisión:" +#, fuzzy +msgid "Surface Points" +msgstr "Superficie %d" #: editor/plugins/particles_editor_plugin.cpp -msgid "Surface" -msgstr "Superficie" +msgid "Surface Points+Normal (Directed)" +msgstr "" #: editor/plugins/particles_editor_plugin.cpp msgid "Volume" msgstr "Volumen" +#: editor/plugins/particles_editor_plugin.cpp +#, fuzzy +msgid "Emission Source: " +msgstr "Relleno de emisión:" + #: editor/plugins/path_2d_editor_plugin.cpp msgid "Remove Point from Curve" msgstr "Borrar punto de curva" @@ -5233,12 +5254,14 @@ msgid "Invalid project path, the path must exist!" msgstr "¡La ruta del proyecto no es correcta, tiene que existir!" #: editor/project_manager.cpp +#, fuzzy msgid "Invalid project path, godot.cfg must not exist." -msgstr "La ruta del proyecto no es correcta, godot.cfg no debe existir." +msgstr "La ruta del proyecto no es correcta, engine.cfg no debe existir." #: editor/project_manager.cpp +#, fuzzy msgid "Invalid project path, godot.cfg must exist." -msgstr "¡La ruta del proyecto no es correcta, godot.cfg debe existir." +msgstr "¡La ruta del proyecto no es correcta, engine.cfg debe existir." #: editor/project_manager.cpp msgid "Imported Project" @@ -5249,8 +5272,9 @@ msgid "Invalid project path (changed anything?)." msgstr "La ruta del proyecto no es correcta (¿has cambiado algo?)." #: editor/project_manager.cpp +#, fuzzy msgid "Couldn't create godot.cfg in project path." -msgstr "No se pudo crear godot.cfg en la ruta de proyecto." +msgstr "No se pudo crear engine.cfg en la ruta de proyecto." #: editor/project_manager.cpp msgid "The following files failed extraction from package:" @@ -5536,8 +5560,9 @@ msgid "Remove Resource Remap Option" msgstr "Quitar opción de remapeo de recursos" #: editor/project_settings.cpp +#, fuzzy msgid "Project Settings (godot.cfg)" -msgstr "Ajustes de proyecto (godot.cfg)" +msgstr "Ajustes de proyecto (engine.cfg)" #: editor/project_settings.cpp editor/settings_config_dialog.cpp msgid "General" @@ -6458,14 +6483,12 @@ msgid "While" msgstr "Mientras" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Return" -msgstr "Devuelve:" +msgstr "Devuelve" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Get" -msgstr "Establecer" +msgstr "Obtener" #: modules/visual_script/visual_script_editor.cpp msgid "Base Type:" @@ -6581,6 +6604,30 @@ msgstr "se presione" msgid "just released" msgstr "se levante" +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Run in Browser" +msgstr "Examinar" + +#: platform/javascript/export/export.cpp +msgid "Run exported HTML in the system's default browser." +msgstr "" + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not write file:\n" +msgstr "No se pudo cargar el tile:" + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not read file:\n" +msgstr "No se pudo cargar el tile:" + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not open template for export:\n" +msgstr "No se pudo crear la carpeta." + #: platform/uwp/export/export.cpp #, fuzzy msgid "" @@ -6875,7 +6922,7 @@ msgstr "" #: scene/gui/dialogs.cpp msgid "Alert!" -msgstr "Notificación" +msgstr "Alerta!" #: scene/gui/dialogs.cpp msgid "Please Confirm..." @@ -6930,6 +6977,9 @@ msgstr "" "que pueda obtener un tamaño. Alternativamente, hacelo un RenderTarget y " "asigná su textura interna a algún otro nodo para mostrar." +#~ msgid "Surface" +#~ msgstr "Superficie" + #~ msgid "" #~ "A SampleLibrary resource must be created or set in the 'samples' property " #~ "in order for SamplePlayer to play sound." @@ -6983,14 +7033,26 @@ msgstr "" #~ msgid "Full name" #~ msgstr "Nombre válido" +#~ msgid "Organizational unit" +#~ msgstr "Unidad organizativa" + #, fuzzy #~ msgid "Organization" #~ msgstr "Transición" +#~ msgid "City" +#~ msgstr "Ciudad" + #, fuzzy #~ msgid "State" #~ msgstr "Estado:" +#~ msgid "2 letter country code" +#~ msgstr "Código de país de dos letras" + +#~ msgid "User alias" +#~ msgstr "Mote" + #, fuzzy #~ msgid "Password" #~ msgstr "Contraseña:" @@ -7003,6 +7065,19 @@ msgstr "" #~ msgid "File name" #~ msgstr "Nuevo nombre:" +#~ msgid "Path : (better to save outside of project)" +#~ msgstr "Ruta (es mejor guardar fuera del proyecto)" + +#~ msgid "" +#~ "Release keystore is not set.\n" +#~ "Do you want to create one?" +#~ msgstr "" +#~ "No hay ningún almacén de claves con el que publicar.\n" +#~ "¿Quieres crear uno?" + +#~ msgid "Fill Keystore/Release User and Release Password" +#~ msgstr "Escribe la contraseña del usuario del almacén de claves" + #~ msgid "Include" #~ msgstr "Incluir" diff --git a/editor/translations/es_AR.po b/editor/translations/es_AR.po index d813943460..502b043378 100644 --- a/editor/translations/es_AR.po +++ b/editor/translations/es_AR.po @@ -2,7 +2,7 @@ # Copyright (C) 2016-2017 Juan Linietsky, Ariel Manzur and the Godot community # This file is distributed under the same license as the Godot source code. # -# Lisandro Lorea <lisandrolorea@gmail.com>, 2016. +# Lisandro Lorea <lisandrolorea@gmail.com>, 2016-2017. # Roger BR <drai_kin@hotmail.com>, 2016. # Sebastian Silva <sebastian@sugarlabs.org>, 2016. # @@ -10,7 +10,7 @@ msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2016-12-04 06:03+0000\n" +"PO-Revision-Date: 2017-01-09 23:10+0000\n" "Last-Translator: Lisandro Lorea <lisandrolorea@gmail.com>\n" "Language-Team: Spanish (Argentina) <https://hosted.weblate.org/projects/" "godot-engine/godot/es_AR/>\n" @@ -19,7 +19,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 2.10-dev\n" +"X-Generator: Weblate 2.11-dev\n" #: editor/animation_editor.cpp msgid "Disabled" @@ -932,7 +932,7 @@ msgstr "Almacenando Archivo:" msgid "Packing" msgstr "Empaquetando" -#: editor/editor_export.cpp +#: editor/editor_export.cpp platform/javascript/export/export.cpp msgid "Template file not found:\n" msgstr "" @@ -1108,9 +1108,8 @@ msgid "Constants:" msgstr "Constantes:" #: editor/editor_help.cpp -#, fuzzy msgid "Property Description:" -msgstr "Descripción Breve:" +msgstr "Descripción de Propiedad:" #: editor/editor_help.cpp msgid "Method Description:" @@ -2762,8 +2761,9 @@ msgid "Compress" msgstr "Comprimir" #: editor/io_plugins/editor_translation_import_plugin.cpp +#, fuzzy msgid "Add to Project (godot.cfg)" -msgstr "Agregar al Proyecto (godot.cfg)" +msgstr "Agregar al Proyecto (engine.cfg)" #: editor/io_plugins/editor_translation_import_plugin.cpp msgid "Import Languages:" @@ -3482,10 +3482,12 @@ msgid "Set Handle" msgstr "Setear Handle" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp msgid "Add/Remove Color Ramp Point" msgstr "Agregar/Quitar Punto de Rampa de Color" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp #: editor/plugins/shader_graph_editor_plugin.cpp msgid "Modify Color Ramp" msgstr "Modificar Rampa de Color" @@ -3520,6 +3522,11 @@ msgstr "Importar desde Escena" msgid "Update from Scene" msgstr "Acutalizar desde Escena" +#: editor/plugins/curve_editor_plugin.cpp +#, fuzzy +msgid "Modify Curve" +msgstr "Modificar Mapa de Curvas" + #: editor/plugins/item_list_editor_plugin.cpp msgid "Item %d" msgstr "Item %d" @@ -3826,6 +3833,10 @@ msgid "Node does not contain geometry (faces)." msgstr "El nodo no contiene geometría (caras)." #: editor/plugins/particles_editor_plugin.cpp +msgid "A processor material of type 'ParticlesMaterial' is required." +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp msgid "Faces contain no area!" msgstr "Las caras no contienen area!" @@ -3838,11 +3849,13 @@ msgid "Generate AABB" msgstr "Generar AABB" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Mesh" +#, fuzzy +msgid "Create Emission Points From Mesh" msgstr "Crear Emisor desde Mesh" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Node" +#, fuzzy +msgid "Create Emission Points From Node" msgstr "Crear Emisor desde Nodo" #: editor/plugins/particles_editor_plugin.cpp @@ -3854,21 +3867,28 @@ msgid "Create Emitter" msgstr "Crear Emisor" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Positions:" +#, fuzzy +msgid "Emission Points:" msgstr "Posiciones de Emisión:" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Fill:" -msgstr "Relleno de Emisión:" +#, fuzzy +msgid "Surface Points" +msgstr "Superficie %d" #: editor/plugins/particles_editor_plugin.cpp -msgid "Surface" -msgstr "Superficie" +msgid "Surface Points+Normal (Directed)" +msgstr "" #: editor/plugins/particles_editor_plugin.cpp msgid "Volume" msgstr "Volumen" +#: editor/plugins/particles_editor_plugin.cpp +#, fuzzy +msgid "Emission Source: " +msgstr "Relleno de Emisión:" + #: editor/plugins/path_2d_editor_plugin.cpp msgid "Remove Point from Curve" msgstr "Remover Punto de Curva" @@ -5196,12 +5216,14 @@ msgid "Invalid project path, the path must exist!" msgstr "Ruta de proyecto inválida, la ruta debe existir!" #: editor/project_manager.cpp +#, fuzzy msgid "Invalid project path, godot.cfg must not exist." -msgstr "Ruta de proyecto inválida, godot.cfg no debe existir." +msgstr "Ruta de proyecto inválida, engine.cfg no debe existir." #: editor/project_manager.cpp +#, fuzzy msgid "Invalid project path, godot.cfg must exist." -msgstr "Ruta de proyecto inválida, godot.cfg debe existir." +msgstr "Ruta de proyecto inválida, engine.cfg debe existir." #: editor/project_manager.cpp msgid "Imported Project" @@ -5212,8 +5234,9 @@ msgid "Invalid project path (changed anything?)." msgstr "Ruta de proyecto inválida (cambiaste algo?)." #: editor/project_manager.cpp +#, fuzzy msgid "Couldn't create godot.cfg in project path." -msgstr "No se pudo crear godot.cfg en la ruta de proyecto." +msgstr "No se pudo crear engine.cfg en la ruta de proyecto." #: editor/project_manager.cpp msgid "The following files failed extraction from package:" @@ -5499,8 +5522,9 @@ msgid "Remove Resource Remap Option" msgstr "Remover Opción de Remapeo de Recursos" #: editor/project_settings.cpp +#, fuzzy msgid "Project Settings (godot.cfg)" -msgstr "Ajustes de Proyecto (godot.cfg)" +msgstr "Ajustes de Proyecto (engine.cfg)" #: editor/project_settings.cpp editor/settings_config_dialog.cpp msgid "General" @@ -6181,9 +6205,8 @@ msgid "Change Notifier Extents" msgstr "Cambiar Alcances de Notificadores" #: editor/spatial_editor_gizmos.cpp -#, fuzzy msgid "Change Probe Extents" -msgstr "Cambiar Alcances de Notificadores" +msgstr "Cambiar Extensión de Sonda" #: modules/gdscript/gd_functions.cpp #: modules/visual_script/visual_script_builtin_funcs.cpp @@ -6518,7 +6541,32 @@ msgstr "recién presionado" msgid "just released" msgstr "recién soltado" +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Run in Browser" +msgstr "Examinar" + +#: platform/javascript/export/export.cpp +msgid "Run exported HTML in the system's default browser." +msgstr "" + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not write file:\n" +msgstr "No se pudo cargar el tile:" + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not read file:\n" +msgstr "No se pudo cargar el tile:" + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not open template for export:\n" +msgstr "No se pudo crear la carpeta." + #: platform/uwp/export/export.cpp +#, fuzzy msgid "" "Couldn't read the certificate file. Are the path and password both correct?" msgstr "" @@ -6854,6 +6902,9 @@ msgstr "" "que pueda obtener un tamaño. Alternativamente, hacelo un RenderTarget y " "asigná su textura interna a algún otro nodo para mostrar." +#~ msgid "Surface" +#~ msgstr "Superficie" + #~ msgid "" #~ "A SampleLibrary resource must be created or set in the 'samples' property " #~ "in order for SamplePlayer to play sound." @@ -6898,33 +6949,51 @@ msgstr "" #~ msgid "No exporter for platform '%s' yet." #~ msgstr "No hay exportador para la plataforma '%s' aun." -#, fuzzy #~ msgid "Create Android keystore" -#~ msgstr "Crear Nuevo Recurso" +#~ msgstr "Crear keystore de Android" -#, fuzzy #~ msgid "Full name" -#~ msgstr "Nombre válido" +#~ msgstr "Nombre completo" + +#~ msgid "Organizational unit" +#~ msgstr "Unidad organizativa" -#, fuzzy #~ msgid "Organization" -#~ msgstr "Transición" +#~ msgstr "Organización" + +#~ msgid "City" +#~ msgstr "Ciudad" -#, fuzzy #~ msgid "State" -#~ msgstr "Estado:" +#~ msgstr "Estado" + +#~ msgid "2 letter country code" +#~ msgstr "Código de país de dos letras" + +#~ msgid "User alias" +#~ msgstr "Alias de usuario" -#, fuzzy #~ msgid "Password" -#~ msgstr "Contraseña:" +#~ msgstr "Contraseña" -#, fuzzy #~ msgid "at least 6 characters" -#~ msgstr "Caracteres válidos:" +#~ msgstr "al menos 6 caracteres" -#, fuzzy #~ msgid "File name" -#~ msgstr "Nuevo nombre:" +#~ msgstr "Nombre de archivo" + +#~ msgid "Path : (better to save outside of project)" +#~ msgstr "Ruta : (es mejor guardar fuera del proyecto)" + +#~ msgid "" +#~ "Release keystore is not set.\n" +#~ "Do you want to create one?" +#~ msgstr "" +#~ "No esta seteado el release keystore.\n" +#~ "¿Querés crear uno?" + +#~ msgid "Fill Keystore/Release User and Release Password" +#~ msgstr "Completa con Keystore/Usuario Release y Cntraseña Release" #~ msgid "Include" #~ msgstr "Incluir" diff --git a/editor/translations/fa.po b/editor/translations/fa.po index 8cf167b3d7..2cfd69f3bd 100644 --- a/editor/translations/fa.po +++ b/editor/translations/fa.po @@ -926,7 +926,7 @@ msgstr "" msgid "Packing" msgstr "" -#: editor/editor_export.cpp +#: editor/editor_export.cpp platform/javascript/export/export.cpp msgid "Template file not found:\n" msgstr "" @@ -3412,10 +3412,12 @@ msgid "Set Handle" msgstr "" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp msgid "Add/Remove Color Ramp Point" msgstr "" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp #: editor/plugins/shader_graph_editor_plugin.cpp msgid "Modify Color Ramp" msgstr "" @@ -3450,6 +3452,10 @@ msgstr "" msgid "Update from Scene" msgstr "" +#: editor/plugins/curve_editor_plugin.cpp +msgid "Modify Curve" +msgstr "" + #: editor/plugins/item_list_editor_plugin.cpp msgid "Item %d" msgstr "" @@ -3752,6 +3758,10 @@ msgid "Node does not contain geometry (faces)." msgstr "" #: editor/plugins/particles_editor_plugin.cpp +msgid "A processor material of type 'ParticlesMaterial' is required." +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp msgid "Faces contain no area!" msgstr "" @@ -3764,11 +3774,11 @@ msgid "Generate AABB" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Mesh" +msgid "Create Emission Points From Mesh" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Node" +msgid "Create Emission Points From Node" msgstr "" #: editor/plugins/particles_editor_plugin.cpp @@ -3780,21 +3790,25 @@ msgid "Create Emitter" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Positions:" +msgid "Emission Points:" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Fill:" +msgid "Surface Points" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Surface" +msgid "Surface Points+Normal (Directed)" msgstr "" #: editor/plugins/particles_editor_plugin.cpp msgid "Volume" msgstr "" +#: editor/plugins/particles_editor_plugin.cpp +msgid "Emission Source: " +msgstr "" + #: editor/plugins/path_2d_editor_plugin.cpp msgid "Remove Point from Curve" msgstr "" @@ -6426,6 +6440,29 @@ msgstr "" msgid "just released" msgstr "" +#: platform/javascript/export/export.cpp +msgid "Run in Browser" +msgstr "" + +#: platform/javascript/export/export.cpp +msgid "Run exported HTML in the system's default browser." +msgstr "" + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not write file:\n" +msgstr "نمیتواند یک پوشه ایجاد شود." + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not read file:\n" +msgstr "نمیتواند یک پوشه ایجاد شود." + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not open template for export:\n" +msgstr "نمیتواند یک پوشه ایجاد شود." + #: platform/uwp/export/export.cpp msgid "" "Couldn't read the certificate file. Are the path and password both correct?" diff --git a/editor/translations/fr.po b/editor/translations/fr.po index 741b27711d..5b0076400c 100644 --- a/editor/translations/fr.po +++ b/editor/translations/fr.po @@ -3,16 +3,16 @@ # This file is distributed under the same license as the Godot source code. # # Brice <bbric@free.fr>, 2016. -# Chenebel Dorian <LoubiTek54@gmail.com>, 2016. +# Chenebel Dorian <LoubiTek54@gmail.com>, 2016-2017. # derderder77 <derderder77380@gmail.com>, 2016. # finkiki <specialpopol@gmx.fr>, 2016. -# Hugo Locurcio <hugo.l@openmailbox.org>, 2016. -# Marc <marc.gilleron@gmail.com>, 2016. +# Hugo Locurcio <hugo.l@openmailbox.org>, 2016-2017. +# Marc <marc.gilleron@gmail.com>, 2016-2017. # Nicolas Lehuen <nicolas@lehuen.com>, 2016. # Omicron <tritonic.dev@gmail.com>, 2016. # Onyx Steinheim <thevoxelmanonyx@gmail.com>, 2016. -# rafeu <duchainer@gmail.com>, 2016. -# Rémi Verschelde <rverschelde@gmail.com>, 2016. +# rafeu <duchainer@gmail.com>, 2016-2017. +# Rémi Verschelde <rverschelde@gmail.com>, 2016-2017. # Roger BR <drai_kin@hotmail.com>, 2016. # Thomas Baijot <thomasbaijot@gmail.com>, 2016. # @@ -20,8 +20,8 @@ msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2016-12-15 22:36+0000\n" -"Last-Translator: Nicolas Lehuen <nicolas@lehuen.com>\n" +"PO-Revision-Date: 2017-02-28 20:39+0000\n" +"Last-Translator: Hugo Locurcio <hugo.l@openmailbox.org>\n" "Language-Team: French <https://hosted.weblate.org/projects/godot-engine/" "godot/fr/>\n" "Language: fr\n" @@ -29,7 +29,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n > 1;\n" -"X-Generator: Weblate 2.10\n" +"X-Generator: Weblate 2.12-dev\n" #: editor/animation_editor.cpp msgid "Disabled" @@ -102,7 +102,7 @@ msgstr "Modifier le mode de valeur de la piste d'animation" #: editor/animation_editor.cpp msgid "Edit Node Curve" -msgstr "Modifier Courbe du Noeud" +msgstr "Modifier la courbe du nœud" #: editor/animation_editor.cpp msgid "Edit Selection Curve" @@ -110,7 +110,7 @@ msgstr "Modifier la courbe de sélection" #: editor/animation_editor.cpp msgid "Anim Delete Keys" -msgstr "Animation Supprimer les clés" +msgstr "Anim Supprimer Clés" #: editor/animation_editor.cpp editor/plugins/tile_map_editor_plugin.cpp msgid "Duplicate Selection" @@ -118,7 +118,7 @@ msgstr "Dupliquer la sélection" #: editor/animation_editor.cpp msgid "Duplicate Transposed" -msgstr "Double transposé" +msgstr "Dupliquer Transposé" #: editor/animation_editor.cpp msgid "Remove Selection" @@ -138,11 +138,11 @@ msgstr "Déclencheur" #: editor/animation_editor.cpp msgid "Anim Add Key" -msgstr "Animation Ajouter une clé" +msgstr "Anim Ajouter Clé" #: editor/animation_editor.cpp msgid "Anim Move Keys" -msgstr "Animation Déplacer les clés" +msgstr "Anim Déplacer Clés" #: editor/animation_editor.cpp msgid "Scale Selection" @@ -150,7 +150,7 @@ msgstr "Mettre à l'échelle la sélection" #: editor/animation_editor.cpp msgid "Scale From Cursor" -msgstr "Echelle Du Curseur" +msgstr "Mettre à l’Échelle Avec Curseur" #: editor/animation_editor.cpp msgid "Goto Next Step" @@ -158,7 +158,7 @@ msgstr "Aller à l'étape suivante" #: editor/animation_editor.cpp msgid "Goto Prev Step" -msgstr "Revenir à l'étape précédente" +msgstr "Aller à l'étape précédente" #: editor/animation_editor.cpp editor/property_editor.cpp msgid "Linear" @@ -228,11 +228,11 @@ msgstr "Animation Inserer une clé" #: editor/animation_editor.cpp msgid "Change Anim Len" -msgstr "Modifier la longueur de l'animation" +msgstr "Changer durée d'animation" #: editor/animation_editor.cpp msgid "Change Anim Loop" -msgstr "Changer l'animation de la boucle" +msgstr "Modifier le bouclage de l'animation" #: editor/animation_editor.cpp msgid "Anim Create Typed Value Key" @@ -244,11 +244,11 @@ msgstr "Insérer une animation" #: editor/animation_editor.cpp msgid "Anim Scale Keys" -msgstr "Images-clés d'échelle de l'animation" +msgstr "Anim Mettre à l’Échelle les Clés" #: editor/animation_editor.cpp msgid "Anim Add Call Track" -msgstr "Animation ajouter une piste d'appel" +msgstr "Anim Ajouter Piste d'Appel" #: editor/animation_editor.cpp msgid "Animation zoom." @@ -321,7 +321,7 @@ msgstr "Optimiser" #: editor/animation_editor.cpp msgid "Select an AnimationPlayer from the Scene Tree to edit animations." msgstr "" -"Sélectionnez un AnimationPlayer de l'arbre de scène pour éditer les " +"Sélectionnez un AnimationPlayer de l'arbre de scène pour modifier les " "animations." #: editor/animation_editor.cpp @@ -366,11 +366,11 @@ msgstr "Redimensionner le tableau" #: editor/array_property_edit.cpp msgid "Change Array Value Type" -msgstr "Changer les types des valeurs du tableau" +msgstr "Modifier type de valeur du tableau" #: editor/array_property_edit.cpp msgid "Change Array Value" -msgstr "Changer les valeurs du tableau" +msgstr "Modifier valeur du tableau" #: editor/asset_library_editor_plugin.cpp editor/create_dialog.cpp #: editor/editor_help.cpp editor/editor_node.cpp @@ -615,7 +615,7 @@ msgstr "Connecter un signal :" #: editor/connections_dialog.cpp msgid "Create Subscription" -msgstr "Créer une souscription" +msgstr "Créer une connexion" #: editor/connections_dialog.cpp msgid "Connect.." @@ -705,7 +705,7 @@ msgstr "Éditeur de dépendances" #: editor/dependency_editor.cpp msgid "Search Replacement Resource:" -msgstr "Recherche une ressource de remplacement :" +msgstr "Recherche ressource de remplacement :" #: editor/dependency_editor.cpp msgid "Owners Of:" @@ -717,18 +717,19 @@ msgid "" "work.\n" "Remove them anyway? (no undo)" msgstr "" -"Les fichiers supprimés sont requis par d'autres ressources pour leur " -"fonctionnement.\n" -"Les supprimer quand même ? (aucune annulation possible)" +"Les fichiers qui vont être supprimés sont utilisés par d'autres ressources " +"pour leur fonctionnement.\n" +"Les supprimer tout de même ? (pas d'annulation possible)" #: editor/dependency_editor.cpp msgid "Remove selected files from the project? (no undo)" msgstr "" -"Supprimer les fichiers sélectionnés du projet ? (aucune annulation possible)" +"Supprimer les fichiers sélectionnés de ce projet ? (pas d'annulation " +"possible)" #: editor/dependency_editor.cpp msgid "Error loading:" -msgstr "Erreur de chargement :" +msgstr "Erreur au chargement :" #: editor/dependency_editor.cpp msgid "Scene failed to load due to missing dependencies:" @@ -947,7 +948,7 @@ msgstr "Stockage du fichier :" msgid "Packing" msgstr "Empaquetage" -#: editor/editor_export.cpp +#: editor/editor_export.cpp platform/javascript/export/export.cpp msgid "Template file not found:\n" msgstr "" @@ -964,7 +965,6 @@ msgid "Error saving atlas:" msgstr "Erreur de sauvegarde de l'atlas :" #: editor/editor_export.cpp -#, fuzzy msgid "Could not save atlas subtexture:" msgstr "Impossible d'enregistrer la sous-texture atlas :" @@ -1124,9 +1124,8 @@ msgid "Constants:" msgstr "Constantes :" #: editor/editor_help.cpp -#, fuzzy msgid "Property Description:" -msgstr "Brève description :" +msgstr "Description des propriétés :" #: editor/editor_help.cpp msgid "Method Description:" @@ -1629,7 +1628,6 @@ msgid "Small Deploy with Network FS" msgstr "Petit déploiement avec le réseau FS" #: editor/editor_node.cpp -#, fuzzy msgid "" "When this option is enabled, export or deploy will produce a minimal " "executable.\n" @@ -1640,11 +1638,11 @@ msgid "" msgstr "" "Lorsque cette option est activée, l'exportation ou le déploiement produira " "un exécutable minimal.\n" -"Le système de fichiers sera fourni à partir du projet par l'éditeur sur le " +"L'éditeur fournira le système de fichiers à partir du projet, via le " "réseau.\n" -"Sur Androïd, le déploiement va utiliser le câble USB pour une meilleure " -"performance. Cette option accélère les tests pour les jeux avec une grande " -"empreinte." +"Sur Android, le déploiement utilisera le câble USB pour une meilleure " +"performance. Cette option accélère les tests pour les jeux gourmands en " +"ressources." #: editor/editor_node.cpp msgid "Visible Collision Shapes" @@ -1671,9 +1669,8 @@ msgstr "" "option est activée." #: editor/editor_node.cpp -#, fuzzy msgid "Sync Scene Changes" -msgstr "Changement de synchronisation de scène" +msgstr "Synchroniser les changements de scène" #: editor/editor_node.cpp msgid "" @@ -1692,17 +1689,16 @@ msgid "Sync Script Changes" msgstr "Synchroniser les modifications de script" #: editor/editor_node.cpp -#, fuzzy msgid "" "When this option is turned on, any script that is saved will be reloaded on " "the running game.\n" "When used remotely on a device, this is more efficient with network " "filesystem." msgstr "" -"Lorsque cette option est activée, chaque script enregistré sera rechargé en " -"jeu.\n" -"Lorsque c'est utilisé à distance sur un périphérique, c'est plus efficace " -"avec le système de fichiers réseau." +"Lorsque cette option est activée, tout script enregistré sera de nouveau " +"chargé pendant le déroulement du jeu.\n" +"Quand elle est utilisée à distance sur un périphérique, cette option est " +"plus efficace avec le système de fichiers réseau." #: editor/editor_node.cpp editor/plugins/spatial_editor_plugin.cpp msgid "Settings" @@ -1747,7 +1743,7 @@ msgstr "Repeindre quand modifié" #: editor/editor_node.cpp msgid "Disable Update Spinner" -msgstr "" +msgstr "Désactiver l'indicateur d'activité" #: editor/editor_node.cpp msgid "Inspector" @@ -1843,7 +1839,7 @@ msgstr "Erreurs de chargement" #: editor/editor_plugin_settings.cpp msgid "Installed Plugins:" -msgstr "Extensions Installées :" +msgstr "Extensions installées :" #: editor/editor_plugin_settings.cpp msgid "Version:" @@ -1867,7 +1863,7 @@ msgstr "Démarrer le profilage" #: editor/editor_profiler.cpp msgid "Measure:" -msgstr "Mesure:" +msgstr "Mesure :" #: editor/editor_profiler.cpp msgid "Frame Time (sec)" @@ -1878,9 +1874,8 @@ msgid "Average Time (sec)" msgstr "Temps moyen (seconde)" #: editor/editor_profiler.cpp -#, fuzzy msgid "Frame %" -msgstr "Image %" +msgstr "% d'image" #: editor/editor_profiler.cpp #, fuzzy @@ -2042,7 +2037,7 @@ msgstr "Scène actuelle" #: editor/export_template_manager.cpp #, fuzzy msgid "Installed Versions:" -msgstr "Extensions Installées :" +msgstr "Extensions installées :" #: editor/export_template_manager.cpp #, fuzzy @@ -2204,7 +2199,8 @@ msgstr "Impossible de charger le script de post-importation :" #: editor/import/resource_importer_scene.cpp #: editor/io_plugins/editor_scene_import_plugin.cpp msgid "Invalid/broken script for post-import (check console):" -msgstr "Script de post-importation invalide ou cassé (vérifiez la console):" +msgstr "" +"Script de post-importation invalide ou corrompu (vérifiez la console) :" #: editor/import/resource_importer_scene.cpp #: editor/io_plugins/editor_scene_import_plugin.cpp @@ -2522,18 +2518,16 @@ msgid "Post-Process Script:" msgstr "Script de post-traitement :" #: editor/io_plugins/editor_scene_import_plugin.cpp -#, fuzzy msgid "Custom Root Node Type:" -msgstr "Type de racine de nœud personnalisé:" +msgstr "Type de nœud racine personnalisé :" #: editor/io_plugins/editor_scene_import_plugin.cpp msgid "Auto" msgstr "Auto." #: editor/io_plugins/editor_scene_import_plugin.cpp -#, fuzzy msgid "Root Node Name:" -msgstr "Nom de nœud :" +msgstr "Nom de nœud racine :" #: editor/io_plugins/editor_scene_import_plugin.cpp msgid "The Following Files are Missing:" @@ -2795,8 +2789,9 @@ msgid "Compress" msgstr "Compresser" #: editor/io_plugins/editor_translation_import_plugin.cpp +#, fuzzy msgid "Add to Project (godot.cfg)" -msgstr "Ajouter au projet (godot.cfg)" +msgstr "Ajouter au projet (engine.cfg)" #: editor/io_plugins/editor_translation_import_plugin.cpp msgid "Import Languages:" @@ -2807,9 +2802,8 @@ msgid "Translation" msgstr "Traduction" #: editor/multi_node_edit.cpp -#, fuzzy msgid "MultiNode Set" -msgstr "Réglage multi-nœuds" +msgstr "Ensemble multi-nœud" #: editor/node_dock.cpp msgid "Groups" @@ -2905,7 +2899,7 @@ msgstr "ERREUR : Pas d'animation à modifier !" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Play selected animation backwards from current pos. (A)" msgstr "" -"Jouer l'animation sélectionnée à l'envers depuis la position actuelle. (A)" +"Jouer l'animation sélectionnée à rebours depuis la position actuelle. (A)" #: editor/plugins/animation_player_editor_plugin.cpp #, fuzzy @@ -2930,9 +2924,8 @@ msgid "Animation position (in seconds)." msgstr "Position de l'animation (en secondes)." #: editor/plugins/animation_player_editor_plugin.cpp -#, fuzzy msgid "Scale animation playback globally for the node." -msgstr "Echelle de lecture de l'animation dans sa globalité pour le noeud." +msgstr "Redimensionner la lecture de l'animation pour tout le nœud." #: editor/plugins/animation_player_editor_plugin.cpp msgid "Create new animation in player." @@ -2994,12 +2987,11 @@ msgstr "Temps de mélange" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Next (Auto Queue):" -msgstr "Suivant (file d'attente automatique) :" +msgstr "Suivant (file d'attente automatique) :" #: editor/plugins/animation_player_editor_plugin.cpp -#, fuzzy msgid "Cross-Animation Blend Times" -msgstr "Temps de mélange des Cross-animation" +msgstr "Temps de mélange des entre animations" #: editor/plugins/animation_player_editor_plugin.cpp #: editor/plugins/canvas_item_editor_plugin.cpp @@ -3033,15 +3025,15 @@ msgstr "Mixer" #: editor/plugins/animation_tree_editor_plugin.cpp msgid "Auto Restart:" -msgstr "Redémarrage automatique :" +msgstr "Redémarrage automatique :" #: editor/plugins/animation_tree_editor_plugin.cpp msgid "Restart (s):" -msgstr "Redémarrer (s) :" +msgstr "Redémarrer (s) :" #: editor/plugins/animation_tree_editor_plugin.cpp msgid "Random Restart (s):" -msgstr "Redémarrage aléatoire (s) :" +msgstr "Redémarrage aléatoire (s) :" #: editor/plugins/animation_tree_editor_plugin.cpp msgid "Start!" @@ -3526,10 +3518,12 @@ msgid "Set Handle" msgstr "Définir la poignée" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp msgid "Add/Remove Color Ramp Point" msgstr "Ajouter/supprimer un point de rampe de couleur" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp #: editor/plugins/shader_graph_editor_plugin.cpp msgid "Modify Color Ramp" msgstr "Modifier une rampe de couleurs" @@ -3564,6 +3558,11 @@ msgstr "Importer depuis la scène" msgid "Update from Scene" msgstr "Mettre à jour depuis la scène" +#: editor/plugins/curve_editor_plugin.cpp +#, fuzzy +msgid "Modify Curve" +msgstr "Modifier la carte de courbes" + #: editor/plugins/item_list_editor_plugin.cpp msgid "Item %d" msgstr "Objet %d" @@ -3711,11 +3710,11 @@ msgstr "Créer un corps statique convexe" #: editor/plugins/mesh_instance_editor_plugin.cpp msgid "Create Trimesh Collision Sibling" -msgstr "" +msgstr "Créer une collision Trimesh" #: editor/plugins/mesh_instance_editor_plugin.cpp msgid "Create Convex Collision Sibling" -msgstr "" +msgstr "Créer une collision convexe" #: editor/plugins/mesh_instance_editor_plugin.cpp msgid "Create Outline Mesh.." @@ -3864,7 +3863,7 @@ msgstr "Charger le masque d'émission" #: editor/plugins/particles_2d_editor_plugin.cpp msgid "Generated Point Count:" -msgstr "Compte de points générés:" +msgstr "Compte de points générés :" #: editor/plugins/particles_editor_plugin.cpp msgid "Node does not contain geometry." @@ -3875,6 +3874,10 @@ msgid "Node does not contain geometry (faces)." msgstr "Le nœud ne contient pas de géométrie (faces)." #: editor/plugins/particles_editor_plugin.cpp +msgid "A processor material of type 'ParticlesMaterial' is required." +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp msgid "Faces contain no area!" msgstr "Les faces n'ont pas de surface !" @@ -3887,11 +3890,13 @@ msgid "Generate AABB" msgstr "Générer un AABB" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Mesh" +#, fuzzy +msgid "Create Emission Points From Mesh" msgstr "Créer un émetteur à partir d'un maillage" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Node" +#, fuzzy +msgid "Create Emission Points From Node" msgstr "Créer un émetteur à partir d'un nœud" #: editor/plugins/particles_editor_plugin.cpp @@ -3903,21 +3908,28 @@ msgid "Create Emitter" msgstr "Créer un émetteur" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Positions:" +#, fuzzy +msgid "Emission Points:" msgstr "Positions d'émission :" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Fill:" -msgstr "Remplissage d'émission :" +#, fuzzy +msgid "Surface Points" +msgstr "Surface %d" #: editor/plugins/particles_editor_plugin.cpp -msgid "Surface" -msgstr "Surface" +msgid "Surface Points+Normal (Directed)" +msgstr "" #: editor/plugins/particles_editor_plugin.cpp msgid "Volume" msgstr "Volume" +#: editor/plugins/particles_editor_plugin.cpp +#, fuzzy +msgid "Emission Source: " +msgstr "Remplissage d'émission :" + #: editor/plugins/path_2d_editor_plugin.cpp msgid "Remove Point from Curve" msgstr "Supprimer le point d'une courbe" @@ -4942,7 +4954,7 @@ msgstr "Coupe automatique" #: editor/plugins/texture_region_editor_plugin.cpp msgid "Offset:" -msgstr "Décalage:" +msgstr "Décalage :" #: editor/plugins/texture_region_editor_plugin.cpp #, fuzzy @@ -4951,7 +4963,7 @@ msgstr "Pas (s) :" #: editor/plugins/texture_region_editor_plugin.cpp msgid "Separation:" -msgstr "Séparation:" +msgstr "Séparation :" #: editor/plugins/texture_region_editor_plugin.cpp msgid "Texture Region" @@ -5247,12 +5259,14 @@ msgid "Invalid project path, the path must exist!" msgstr "Chemin de projet invalide, le chemin doit exister !" #: editor/project_manager.cpp +#, fuzzy msgid "Invalid project path, godot.cfg must not exist." -msgstr "Chemin de projet invalide, godot.cfg ne doit pas exister." +msgstr "Chemin de projet invalide, engine.cfg ne doit pas exister." #: editor/project_manager.cpp +#, fuzzy msgid "Invalid project path, godot.cfg must exist." -msgstr "Chemin de projet invalide, godot.cfg doit exister." +msgstr "Chemin de projet invalide, engine.cfg doit exister." #: editor/project_manager.cpp msgid "Imported Project" @@ -5263,8 +5277,10 @@ msgid "Invalid project path (changed anything?)." msgstr "Chemin de projet non valide (avez-vous changé quelque chose ?)." #: editor/project_manager.cpp +#, fuzzy msgid "Couldn't create godot.cfg in project path." -msgstr "Impossible de créer le fichier godot.cfg dans le répertoire du projet." +msgstr "" +"Impossible de créer le fichier engine.cfg dans le répertoire du projet." #: editor/project_manager.cpp #, fuzzy @@ -5555,8 +5571,9 @@ msgid "Remove Resource Remap Option" msgstr "" #: editor/project_settings.cpp +#, fuzzy msgid "Project Settings (godot.cfg)" -msgstr "Paramètres du projet (godot.cfg)" +msgstr "Paramètres du projet (engine.cfg)" #: editor/project_settings.cpp editor/settings_config_dialog.cpp msgid "General" @@ -5720,7 +5737,7 @@ msgstr "Impossible d'exécuter l'outil PVRTC :" #: editor/pvrtc_compress.cpp msgid "Can't load back converted image using PVRTC tool:" msgstr "" -"L'image convertie n'a pas pu être rechargée en utilisant l'outil PVRTC:" +"L'image convertie n'a pas pu être rechargée en utilisant l'outil PVRTC :" #: editor/reparent_dialog.cpp editor/scene_tree_dock.cpp msgid "Reparent Node" @@ -6251,7 +6268,8 @@ msgstr "Changer les extents d'un notificateur" #: modules/gdscript/gd_functions.cpp #: modules/visual_script/visual_script_builtin_funcs.cpp msgid "Invalid type argument to convert(), use TYPE_* constants." -msgstr "Argument invalide de type convertir(), utiliser le TYPE * constantes." +msgstr "" +"Argument de type incorrect dans convert(), utilisez les constantes TYPE_*." #: modules/gdscript/gd_functions.cpp #: modules/visual_script/visual_script_builtin_funcs.cpp @@ -6260,7 +6278,7 @@ msgstr "Pas assez d'octets pour les octets de décodage, ou format non valide." #: modules/gdscript/gd_functions.cpp msgid "step argument is zero!" -msgstr "L'argument du pas est zéro!" +msgstr "L'argument du pas est zéro !" #: modules/gdscript/gd_functions.cpp msgid "Not a script with an instance" @@ -6299,6 +6317,8 @@ msgid "" "A node yielded without working memory, please read the docs on how to yield " "properly!" msgstr "" +"Une node utilise yield sans mémoire de travail; veuillez lire la " +"documentation sur l'utilisation de yield !" #: modules/visual_script/visual_script.cpp msgid "" @@ -6324,7 +6344,7 @@ msgstr "Le nœud a retourné une séquence de sortie invalide: " msgid "Found sequence bit but not the node in the stack, report bug!" msgstr "" "Une séquence d'octets a été trouvée mais pas le nœud dans la pile, signalez " -"le bug!" +"le bug !" #: modules/visual_script/visual_script.cpp msgid "Stack overflow with stack depth: " @@ -6340,11 +6360,11 @@ msgstr "Variables :" #: modules/visual_script/visual_script_editor.cpp msgid "Name is not a valid identifier:" -msgstr "Le nom n'est pas un identifiant valide:" +msgstr "Le nom n'est pas un identifiant valide :" #: modules/visual_script/visual_script_editor.cpp msgid "Name already in use by another func/var/signal:" -msgstr "Le nom est déjà utilisé dans une autre func/var/signal:" +msgstr "Le nom est déjà utilisé dans une autre func/var/signal :" #: modules/visual_script/visual_script_editor.cpp msgid "Rename Function" @@ -6380,7 +6400,7 @@ msgstr "Supprimer la variable" #: modules/visual_script/visual_script_editor.cpp msgid "Editing Variable:" -msgstr "Éditer la variable:" +msgstr "Modification de la variable :" #: modules/visual_script/visual_script_editor.cpp msgid "Remove Signal" @@ -6388,7 +6408,7 @@ msgstr "Supprimer le signal" #: modules/visual_script/visual_script_editor.cpp msgid "Editing Signal:" -msgstr "Éditer le signal :" +msgstr "Modification du signal :" #: modules/visual_script/visual_script_editor.cpp msgid "Change Expression" @@ -6428,7 +6448,7 @@ msgstr "Maintenir Ctrl pour déposer un mutateur de variable." #: modules/visual_script/visual_script_editor.cpp msgid "Add Preload Node" -msgstr "Ajouter un nœud 'preload'" +msgstr "Ajouter un nœud préchargé" #: modules/visual_script/visual_script_editor.cpp msgid "Add Node(s) From Tree" @@ -6472,23 +6492,23 @@ msgstr "Récupérer" #: modules/visual_script/visual_script_editor.cpp msgid "Base Type:" -msgstr "Type de base" +msgstr "Type de base :" #: modules/visual_script/visual_script_editor.cpp msgid "Available Nodes:" -msgstr "Nœuds disponibles:" +msgstr "Nœuds disponibles :" #: modules/visual_script/visual_script_editor.cpp msgid "Select or create a function to edit graph" -msgstr "Sélectionner ou créer une fonction pour éditer le graph" +msgstr "Sélectionner ou créer une fonction pour éditer le graphe" #: modules/visual_script/visual_script_editor.cpp msgid "Edit Signal Arguments:" -msgstr "Éditer les arguments du signal:" +msgstr "Modifier les arguments du signal :" #: modules/visual_script/visual_script_editor.cpp msgid "Edit Variable:" -msgstr "Éditer la variable:" +msgstr "Modifier la variable :" #: modules/visual_script/visual_script_editor.cpp msgid "Change" @@ -6574,18 +6594,43 @@ msgstr "" #: modules/visual_script/visual_script_nodes.cpp msgid "just pressed" -msgstr "seulement pressé" +msgstr "vient d'être appuyé" #: modules/visual_script/visual_script_nodes.cpp msgid "just released" -msgstr "seulement relâché" +msgstr "vient d'être relâché" + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Run in Browser" +msgstr "Parcourir" + +#: platform/javascript/export/export.cpp +msgid "Run exported HTML in the system's default browser." +msgstr "" + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not write file:\n" +msgstr "Impossible de trouver la tuile :" + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not read file:\n" +msgstr "Impossible de trouver la tuile :" + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not open template for export:\n" +msgstr "Impossible de créer le dossier." #: platform/uwp/export/export.cpp +#, fuzzy msgid "" "Couldn't read the certificate file. Are the path and password both correct?" msgstr "" -"Le fichier certificat ne pourrait pas être lu. Les chemin et mot de passe " -"sont t-ils tous deux corrects ?" +"Le fichier certificat n'a pas pu être lu. Le chemin et le mot de passe sont-" +"ils tous deux corrects ?" #: platform/uwp/export/export.cpp msgid "Error creating the signature object." @@ -6629,7 +6674,7 @@ msgstr "Couleur d'arrière-plan invalide." #: platform/uwp/export/export.cpp msgid "Invalid Store Logo image dimensions (should be 50x50)." -msgstr "Dimensions d'image de logo magasin invalides (devraient être 50x50)." +msgstr "Dimensions de l'image incorrectes (devraient être 50x50)." #: platform/uwp/export/export.cpp msgid "Invalid square 44x44 logo image dimensions (should be 44x44)." @@ -6913,10 +6958,13 @@ msgid "" "obtain a size. Otherwise, make it a RenderTarget and assign its internal " "texture to some node for display." msgstr "" -"Ce Viewport n'est pas sélectionné comme cible du rendu. Si vous avez " +"Ce Viewport n'est pas sélectionné comme cible de rendu. Si vous avez " "l'intention d'afficher son contenu directement à l'écran, rattachez-le à un " -"nœud de type Control afin qu'il en obtienne une taille. Sinon, faites-en un " -"RenderTarget et assignez sa texture à un nœud quelquonque pour son affichage." +"nœud de type Control afin qu'il en obtienne une taille. Sinon, faites-en une " +"RenderTarget et assignez sa texture à un nœud pouvant l'afficher." + +#~ msgid "Surface" +#~ msgstr "Surface" #~ msgid "" #~ "A SampleLibrary resource must be created or set in the 'samples' property " @@ -6970,14 +7018,23 @@ msgstr "" #~ msgid "Full name" #~ msgstr "Nom valide" +#~ msgid "Organizational unit" +#~ msgstr "Unité d'organisation" + #, fuzzy #~ msgid "Organization" #~ msgstr "Transition" +#~ msgid "City" +#~ msgstr "Ville" + #, fuzzy #~ msgid "State" #~ msgstr "État :" +#~ msgid "2 letter country code" +#~ msgstr "Code de pays à 2 lettres" + #, fuzzy #~ msgid "Password" #~ msgstr "Mot de passe :" diff --git a/editor/translations/hu.po b/editor/translations/hu.po index 7ee105d267..b26c92257f 100644 --- a/editor/translations/hu.po +++ b/editor/translations/hu.po @@ -910,7 +910,7 @@ msgstr "" msgid "Packing" msgstr "" -#: editor/editor_export.cpp +#: editor/editor_export.cpp platform/javascript/export/export.cpp msgid "Template file not found:\n" msgstr "" @@ -3382,10 +3382,12 @@ msgid "Set Handle" msgstr "" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp msgid "Add/Remove Color Ramp Point" msgstr "" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp #: editor/plugins/shader_graph_editor_plugin.cpp msgid "Modify Color Ramp" msgstr "" @@ -3420,6 +3422,10 @@ msgstr "" msgid "Update from Scene" msgstr "" +#: editor/plugins/curve_editor_plugin.cpp +msgid "Modify Curve" +msgstr "" + #: editor/plugins/item_list_editor_plugin.cpp msgid "Item %d" msgstr "" @@ -3721,6 +3727,10 @@ msgid "Node does not contain geometry (faces)." msgstr "" #: editor/plugins/particles_editor_plugin.cpp +msgid "A processor material of type 'ParticlesMaterial' is required." +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp msgid "Faces contain no area!" msgstr "" @@ -3733,11 +3743,11 @@ msgid "Generate AABB" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Mesh" +msgid "Create Emission Points From Mesh" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Node" +msgid "Create Emission Points From Node" msgstr "" #: editor/plugins/particles_editor_plugin.cpp @@ -3749,21 +3759,25 @@ msgid "Create Emitter" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Positions:" +msgid "Emission Points:" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Fill:" +msgid "Surface Points" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Surface" +msgid "Surface Points+Normal (Directed)" msgstr "" #: editor/plugins/particles_editor_plugin.cpp msgid "Volume" msgstr "" +#: editor/plugins/particles_editor_plugin.cpp +msgid "Emission Source: " +msgstr "" + #: editor/plugins/path_2d_editor_plugin.cpp msgid "Remove Point from Curve" msgstr "" @@ -6353,6 +6367,26 @@ msgstr "" msgid "just released" msgstr "" +#: platform/javascript/export/export.cpp +msgid "Run in Browser" +msgstr "" + +#: platform/javascript/export/export.cpp +msgid "Run exported HTML in the system's default browser." +msgstr "" + +#: platform/javascript/export/export.cpp +msgid "Could not write file:\n" +msgstr "" + +#: platform/javascript/export/export.cpp +msgid "Could not read file:\n" +msgstr "" + +#: platform/javascript/export/export.cpp +msgid "Could not open template for export:\n" +msgstr "" + #: platform/uwp/export/export.cpp msgid "" "Couldn't read the certificate file. Are the path and password both correct?" diff --git a/editor/translations/id.po b/editor/translations/id.po index 3600ad3152..8151c3208c 100644 --- a/editor/translations/id.po +++ b/editor/translations/id.po @@ -5,21 +5,22 @@ # Abdul Aziz Muslim Alqudsy <abdul.aziz.muslim.alqudsy@gmail.com>, 2016. # Andevid Dynmyn <doyan4forum@gmail.com>, 2016. # Andinawan Asa <asaandinawan@gmail.com>, 2016. +# Damar S. M <the.last.walla@gmail.com>, 2017. # Khairul Hidayat <khairulcyber4rt@gmail.com>, 2016. # yursan9 <rizal.sagi@gmail.com>, 2016. # msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" -"PO-Revision-Date: 2016-10-15 04:17+0000\n" -"Last-Translator: Andevid Dynmyn <doyan4forum@gmail.com>\n" +"PO-Revision-Date: 2017-01-18 13:18+0000\n" +"Last-Translator: Damar S. M. <the.last.walla@gmail.com>\n" "Language-Team: Indonesian <https://hosted.weblate.org/projects/godot-engine/" "godot/id/>\n" "Language: id\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8-bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: Weblate 2.9-dev\n" +"X-Generator: Weblate 2.11-dev\n" #: editor/animation_editor.cpp msgid "Disabled" @@ -955,7 +956,7 @@ msgstr "Menyimpan File:" msgid "Packing" msgstr "Mengemas" -#: editor/editor_export.cpp +#: editor/editor_export.cpp platform/javascript/export/export.cpp msgid "Template file not found:\n" msgstr "" @@ -3464,10 +3465,12 @@ msgid "Set Handle" msgstr "" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp msgid "Add/Remove Color Ramp Point" msgstr "" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp #: editor/plugins/shader_graph_editor_plugin.cpp msgid "Modify Color Ramp" msgstr "" @@ -3502,6 +3505,10 @@ msgstr "" msgid "Update from Scene" msgstr "" +#: editor/plugins/curve_editor_plugin.cpp +msgid "Modify Curve" +msgstr "" + #: editor/plugins/item_list_editor_plugin.cpp msgid "Item %d" msgstr "" @@ -3804,6 +3811,10 @@ msgid "Node does not contain geometry (faces)." msgstr "" #: editor/plugins/particles_editor_plugin.cpp +msgid "A processor material of type 'ParticlesMaterial' is required." +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp msgid "Faces contain no area!" msgstr "" @@ -3816,11 +3827,11 @@ msgid "Generate AABB" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Mesh" +msgid "Create Emission Points From Mesh" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Node" +msgid "Create Emission Points From Node" msgstr "" #: editor/plugins/particles_editor_plugin.cpp @@ -3832,21 +3843,25 @@ msgid "Create Emitter" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Positions:" +msgid "Emission Points:" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Fill:" +msgid "Surface Points" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Surface" +msgid "Surface Points+Normal (Directed)" msgstr "" #: editor/plugins/particles_editor_plugin.cpp msgid "Volume" msgstr "" +#: editor/plugins/particles_editor_plugin.cpp +msgid "Emission Source: " +msgstr "" + #: editor/plugins/path_2d_editor_plugin.cpp msgid "Remove Point from Curve" msgstr "" @@ -6157,20 +6172,19 @@ msgstr "Tidak cukup bytes untuk menerjemahkan, atau format tidak sah." #: modules/gdscript/gd_functions.cpp msgid "step argument is zero!" -msgstr "Langkah argumen adalah nol!" +msgstr "Argumen langkah adalah nol!" #: modules/gdscript/gd_functions.cpp -#, fuzzy msgid "Not a script with an instance" -msgstr "Skrip tidak mempunyai turunannya" +msgstr "Bukan skrip dengan contoh" #: modules/gdscript/gd_functions.cpp msgid "Not based on a script" -msgstr "Tidak berbasis skrip" +msgstr "Tidak berbasis pada skrip" #: modules/gdscript/gd_functions.cpp msgid "Not based on a resource file" -msgstr "Tidak berbasis resource file" +msgstr "Tidak berbasis pada resource file" #: modules/gdscript/gd_functions.cpp msgid "Invalid instance dictionary format (missing @path)" @@ -6201,8 +6215,8 @@ msgid "" "Node yielded, but did not return a function state in the first working " "memory." msgstr "" -"Node dihasilkan, tetapi keadaan sebuah fungsi tidak kembali saat kerja " -"memori pertama." +"Node dihasilkan, tetapi keadaan sebuah fungsi tidak kembali saat memori " +"pertama bekerja." #: modules/visual_script/visual_script.cpp msgid "" @@ -6287,9 +6301,8 @@ msgid "Editing Signal:" msgstr "Mengedit Sinyal:" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Change Expression" -msgstr "Ubah Transisi Anim" +msgstr "Ubah Pernyataan" #: modules/visual_script/visual_script_editor.cpp msgid "Add Node" @@ -6298,6 +6311,8 @@ msgstr "Tambahkan Node" #: modules/visual_script/visual_script_editor.cpp msgid "Hold Meta to drop a Getter. Hold Shift to drop a generic signature." msgstr "" +"Tahan Meta untuk meletakkan sebuah Getter. Tahan Shift untuk meletakkan " +"generic signature." #: modules/visual_script/visual_script_editor.cpp msgid "Hold Ctrl to drop a Getter. Hold Shift to drop a generic signature." @@ -6478,6 +6493,29 @@ msgstr "" msgid "just released" msgstr "" +#: platform/javascript/export/export.cpp +msgid "Run in Browser" +msgstr "" + +#: platform/javascript/export/export.cpp +msgid "Run exported HTML in the system's default browser." +msgstr "" + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not write file:\n" +msgstr "Tidak dapat membuat folder." + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not read file:\n" +msgstr "Tidak dapat membuat folder." + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not open template for export:\n" +msgstr "Tidak dapat membuat folder." + #: platform/uwp/export/export.cpp msgid "" "Couldn't read the certificate file. Are the path and password both correct?" diff --git a/editor/translations/it.po b/editor/translations/it.po index af6699da21..affd0dfdc1 100644 --- a/editor/translations/it.po +++ b/editor/translations/it.po @@ -2,14 +2,15 @@ # Copyright (C) 2016-2017 Juan Linietsky, Ariel Manzur and the Godot community # This file is distributed under the same license as the Godot source code. # -# Dario Bonfanti <bonfi.96@hotmail.it>, 2016. +# Dario Bonfanti <bonfi.96@hotmail.it>, 2016-2017. +# RealAquilus <JamesHeller@live.it>, 2017. # msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2016-11-22 20:27+0000\n" -"Last-Translator: Dario Bonfanti <bonfi.96@hotmail.it>\n" +"PO-Revision-Date: 2017-01-29 19:58+0000\n" +"Last-Translator: RealAquilus <JamesHeller@live.it>\n" "Language-Team: Italian <https://hosted.weblate.org/projects/godot-engine/" "godot/it/>\n" "Language: it\n" @@ -17,7 +18,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 2.10-dev\n" +"X-Generator: Weblate 2.11-dev\n" #: editor/animation_editor.cpp msgid "Disabled" @@ -931,7 +932,7 @@ msgstr "Memorizzazione File:" msgid "Packing" msgstr "Impacchettando" -#: editor/editor_export.cpp +#: editor/editor_export.cpp platform/javascript/export/export.cpp msgid "Template file not found:\n" msgstr "" @@ -1107,9 +1108,8 @@ msgid "Constants:" msgstr "Costanti:" #: editor/editor_help.cpp -#, fuzzy msgid "Property Description:" -msgstr "Breve Descrizione:" +msgstr "Descrizione Proprietà:" #: editor/editor_help.cpp msgid "Method Description:" @@ -2763,8 +2763,9 @@ msgid "Compress" msgstr "Comprimi" #: editor/io_plugins/editor_translation_import_plugin.cpp +#, fuzzy msgid "Add to Project (godot.cfg)" -msgstr "Aggiungi a Progetto (godot.cfg)" +msgstr "Aggiungi a Progetto (engine.cfg)" #: editor/io_plugins/editor_translation_import_plugin.cpp msgid "Import Languages:" @@ -3481,10 +3482,12 @@ msgid "Set Handle" msgstr "Imposta Maniglia" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp msgid "Add/Remove Color Ramp Point" msgstr "Aggiungi/Rimuovi Punto Rampa Colori" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp #: editor/plugins/shader_graph_editor_plugin.cpp msgid "Modify Color Ramp" msgstr "Modifica Rampa Colori" @@ -3519,6 +3522,11 @@ msgstr "Importa da Scena" msgid "Update from Scene" msgstr "Aggiorna da Scena" +#: editor/plugins/curve_editor_plugin.cpp +#, fuzzy +msgid "Modify Curve" +msgstr "Modifica la Mappa Curve" + #: editor/plugins/item_list_editor_plugin.cpp msgid "Item %d" msgstr "Elemento %d" @@ -3826,6 +3834,10 @@ msgid "Node does not contain geometry (faces)." msgstr "Il nodo non contiene geometria (facce)." #: editor/plugins/particles_editor_plugin.cpp +msgid "A processor material of type 'ParticlesMaterial' is required." +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp msgid "Faces contain no area!" msgstr "Le facce non contengono area!" @@ -3838,11 +3850,13 @@ msgid "Generate AABB" msgstr "Genera AABB" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Mesh" +#, fuzzy +msgid "Create Emission Points From Mesh" msgstr "Crea Emitter Da Mesh" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Node" +#, fuzzy +msgid "Create Emission Points From Node" msgstr "Crea Emitter Da Nodo" #: editor/plugins/particles_editor_plugin.cpp @@ -3854,21 +3868,28 @@ msgid "Create Emitter" msgstr "Crea Emitter" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Positions:" +#, fuzzy +msgid "Emission Points:" msgstr "Posizioni di Emissione:" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Fill:" -msgstr "Riempimento Emissione:" +#, fuzzy +msgid "Surface Points" +msgstr "Superficie %d" #: editor/plugins/particles_editor_plugin.cpp -msgid "Surface" -msgstr "Superficie" +msgid "Surface Points+Normal (Directed)" +msgstr "" #: editor/plugins/particles_editor_plugin.cpp msgid "Volume" msgstr "Volume" +#: editor/plugins/particles_editor_plugin.cpp +#, fuzzy +msgid "Emission Source: " +msgstr "Riempimento Emissione:" + #: editor/plugins/path_2d_editor_plugin.cpp msgid "Remove Point from Curve" msgstr "Rimuovi Punto da Curva" @@ -5196,12 +5217,14 @@ msgid "Invalid project path, the path must exist!" msgstr "Percorso di progetto invalido, il percorso deve esistere!" #: editor/project_manager.cpp +#, fuzzy msgid "Invalid project path, godot.cfg must not exist." -msgstr "Percorso di progetto invalido, godot.cfg non deve esistere." +msgstr "Percorso di progetto invalido, engine.cfg non deve esistere." #: editor/project_manager.cpp +#, fuzzy msgid "Invalid project path, godot.cfg must exist." -msgstr "Percorso di progetto invalido, godot.cfg deve esistere." +msgstr "Percorso di progetto invalido, engine.cfg deve esistere." #: editor/project_manager.cpp msgid "Imported Project" @@ -5212,8 +5235,9 @@ msgid "Invalid project path (changed anything?)." msgstr "Percorso di progetto invalido (cambiato qualcosa?)." #: editor/project_manager.cpp +#, fuzzy msgid "Couldn't create godot.cfg in project path." -msgstr "Impossibile creare godot.cfg nel percorso di progetto." +msgstr "Impossibile creare engine.cfg nel percorso di progetto." #: editor/project_manager.cpp msgid "The following files failed extraction from package:" @@ -5497,8 +5521,9 @@ msgid "Remove Resource Remap Option" msgstr "Rimuovi Opzione di Remap Rimorse" #: editor/project_settings.cpp +#, fuzzy msgid "Project Settings (godot.cfg)" -msgstr "Impostazioni Progetto (godot.cfg)" +msgstr "Impostazioni Progetto (engine.cfg)" #: editor/project_settings.cpp editor/settings_config_dialog.cpp msgid "General" @@ -6177,9 +6202,8 @@ msgid "Change Notifier Extents" msgstr "Cambia Estensione di Notifier" #: editor/spatial_editor_gizmos.cpp -#, fuzzy msgid "Change Probe Extents" -msgstr "Cambia Estensione di Notifier" +msgstr "Cambia Estensione Probe" #: modules/gdscript/gd_functions.cpp #: modules/visual_script/visual_script_builtin_funcs.cpp @@ -6512,7 +6536,32 @@ msgstr "appena premuto" msgid "just released" msgstr "appena rilasciato" +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Run in Browser" +msgstr "Sfoglia" + +#: platform/javascript/export/export.cpp +msgid "Run exported HTML in the system's default browser." +msgstr "" + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not write file:\n" +msgstr "Impossibile trovare tile:" + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not read file:\n" +msgstr "Impossibile trovare tile:" + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not open template for export:\n" +msgstr "Impossibile creare cartella." + #: platform/uwp/export/export.cpp +#, fuzzy msgid "" "Couldn't read the certificate file. Are the path and password both correct?" msgstr "" @@ -6811,7 +6860,7 @@ msgstr "Attenzione!" #: scene/gui/dialogs.cpp msgid "Please Confirm..." -msgstr "Si Prega Di Confermare..." +msgstr "Per Favore Conferma..." #: scene/gui/file_dialog.cpp msgid "Open a File" @@ -6862,6 +6911,9 @@ msgstr "" "Control, in modo che possa ottenere una dimensione. Altrimenti, renderlo un " "RenderTarget e assegnare alla sua texture interna qualche nodo da mostrare." +#~ msgid "Surface" +#~ msgstr "Superficie" + #~ msgid "" #~ "A SampleLibrary resource must be created or set in the 'samples' property " #~ "in order for SamplePlayer to play sound." @@ -6906,33 +6958,51 @@ msgstr "" #~ msgid "No exporter for platform '%s' yet." #~ msgstr "Per ora non vi è esportatore per la piattaforma '%s'." -#, fuzzy #~ msgid "Create Android keystore" -#~ msgstr "Crea Nuova Risorsa" +#~ msgstr "Crea keystore Android" -#, fuzzy #~ msgid "Full name" -#~ msgstr "Nome valido" +#~ msgstr "Nome completo" + +#~ msgid "Organizational unit" +#~ msgstr "Unità organizzativa" -#, fuzzy #~ msgid "Organization" -#~ msgstr "Transizione" +#~ msgstr "Organizzazione" + +#~ msgid "City" +#~ msgstr "Città" -#, fuzzy #~ msgid "State" -#~ msgstr "Stato:" +#~ msgstr "Stato" + +#~ msgid "2 letter country code" +#~ msgstr "Codice nazione di 2 lettere" + +#~ msgid "User alias" +#~ msgstr "Alias user" -#, fuzzy #~ msgid "Password" -#~ msgstr "Password:" +#~ msgstr "Password" -#, fuzzy #~ msgid "at least 6 characters" -#~ msgstr "Caratteri validi:" +#~ msgstr "almeno 6 caratteri" -#, fuzzy #~ msgid "File name" -#~ msgstr "Nuovo nome:" +#~ msgstr "Nome file" + +#~ msgid "Path : (better to save outside of project)" +#~ msgstr "Percorso: (meglio salvare fuori dal progetto)" + +#~ msgid "" +#~ "Release keystore is not set.\n" +#~ "Do you want to create one?" +#~ msgstr "" +#~ "Keystore di release non impostato.\n" +#~ "Vuoi crearne uno?" + +#~ msgid "Fill Keystore/Release User and Release Password" +#~ msgstr "Completa Keystore/Utente Release e Password Release" #~ msgid "Include" #~ msgstr "Includi" diff --git a/editor/translations/ja.po b/editor/translations/ja.po index dbabe4d31f..7f0f01ff07 100644 --- a/editor/translations/ja.po +++ b/editor/translations/ja.po @@ -4,19 +4,20 @@ # # akirakido <achts.y@gmail.com>, 2016. # hopping tappy (たっぴさん) <hopping.tappy@gmail.com>, 2016. +# Lexi Grafen <shfeedly@gmail.com>, 2017. # msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" -"PO-Revision-Date: 2016-11-12 15:11+0000\n" -"Last-Translator: akirakido <achts.y@gmail.com>\n" +"PO-Revision-Date: 2017-01-25 08:56+0000\n" +"Last-Translator: Lexi Grafen <shfeedly@gmail.com>\n" "Language-Team: Japanese <https://hosted.weblate.org/projects/godot-engine/" "godot/ja/>\n" "Language: ja\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8-bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: Weblate 2.9\n" +"X-Generator: Weblate 2.11-dev\n" #: editor/animation_editor.cpp msgid "Disabled" @@ -916,7 +917,7 @@ msgstr "" msgid "Packing" msgstr "" -#: editor/editor_export.cpp +#: editor/editor_export.cpp platform/javascript/export/export.cpp msgid "Template file not found:\n" msgstr "" @@ -3407,10 +3408,12 @@ msgid "Set Handle" msgstr "" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp msgid "Add/Remove Color Ramp Point" msgstr "" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp #: editor/plugins/shader_graph_editor_plugin.cpp msgid "Modify Color Ramp" msgstr "" @@ -3445,6 +3448,10 @@ msgstr "" msgid "Update from Scene" msgstr "" +#: editor/plugins/curve_editor_plugin.cpp +msgid "Modify Curve" +msgstr "" + #: editor/plugins/item_list_editor_plugin.cpp msgid "Item %d" msgstr "" @@ -3747,6 +3754,10 @@ msgid "Node does not contain geometry (faces)." msgstr "" #: editor/plugins/particles_editor_plugin.cpp +msgid "A processor material of type 'ParticlesMaterial' is required." +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp msgid "Faces contain no area!" msgstr "" @@ -3759,11 +3770,11 @@ msgid "Generate AABB" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Mesh" +msgid "Create Emission Points From Mesh" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Node" +msgid "Create Emission Points From Node" msgstr "" #: editor/plugins/particles_editor_plugin.cpp @@ -3775,21 +3786,25 @@ msgid "Create Emitter" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Positions:" +msgid "Emission Points:" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Fill:" +msgid "Surface Points" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Surface" +msgid "Surface Points+Normal (Directed)" msgstr "" #: editor/plugins/particles_editor_plugin.cpp msgid "Volume" msgstr "" +#: editor/plugins/particles_editor_plugin.cpp +msgid "Emission Source: " +msgstr "" + #: editor/plugins/path_2d_editor_plugin.cpp msgid "Remove Point from Curve" msgstr "" @@ -6128,6 +6143,8 @@ msgid "" "A node yielded without working memory, please read the docs on how to yield " "properly!" msgstr "" +"使用メモリ外でノードが発生しました。正しく発生させるためにドキュメントをお読" +"みください。" #: modules/visual_script/visual_script.cpp msgid "" @@ -6184,9 +6201,8 @@ msgid "Rename Signal" msgstr "" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Add Function" -msgstr "関数を作成" +msgstr "関数を追加" #: modules/visual_script/visual_script_editor.cpp msgid "Add Variable" @@ -6408,6 +6424,29 @@ msgstr "" msgid "just released" msgstr "" +#: platform/javascript/export/export.cpp +msgid "Run in Browser" +msgstr "" + +#: platform/javascript/export/export.cpp +msgid "Run exported HTML in the system's default browser." +msgstr "" + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not write file:\n" +msgstr "フォルダを作成できませんでした。" + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not read file:\n" +msgstr "フォルダを作成できませんでした。" + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not open template for export:\n" +msgstr "フォルダを作成できませんでした。" + #: platform/uwp/export/export.cpp msgid "" "Couldn't read the certificate file. Are the path and password both correct?" diff --git a/editor/translations/ko.po b/editor/translations/ko.po index 20d1aed61e..02d7385927 100644 --- a/editor/translations/ko.po +++ b/editor/translations/ko.po @@ -2,13 +2,13 @@ # Copyright (C) 2016-2017 Juan Linietsky, Ariel Manzur and the Godot community # This file is distributed under the same license as the Godot source code. # -# 박한얼 (volzhs) <volzhs@gmail.com>, 2016. +# 박한얼 (volzhs) <volzhs@gmail.com>, 2016-2017. # msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2016-11-23 14:38+0000\n" +"PO-Revision-Date: 2017-02-08 16:38+0000\n" "Last-Translator: 박한얼 <volzhs@gmail.com>\n" "Language-Team: Korean <https://hosted.weblate.org/projects/godot-engine/" "godot/ko/>\n" @@ -17,7 +17,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: Weblate 2.10-dev\n" +"X-Generator: Weblate 2.12-dev\n" #: editor/animation_editor.cpp msgid "Disabled" @@ -925,7 +925,7 @@ msgstr "파일 저장 중:" msgid "Packing" msgstr "패킹중" -#: editor/editor_export.cpp +#: editor/editor_export.cpp platform/javascript/export/export.cpp msgid "Template file not found:\n" msgstr "" @@ -1101,9 +1101,8 @@ msgid "Constants:" msgstr "상수:" #: editor/editor_help.cpp -#, fuzzy msgid "Property Description:" -msgstr "간단한 설명:" +msgstr "속성 설명:" #: editor/editor_help.cpp msgid "Method Description:" @@ -2746,8 +2745,9 @@ msgid "Compress" msgstr "압축" #: editor/io_plugins/editor_translation_import_plugin.cpp +#, fuzzy msgid "Add to Project (godot.cfg)" -msgstr "프로젝트에 추가 (godot.cfg)" +msgstr "프로젝트에 추가 (engine.cfg)" #: editor/io_plugins/editor_translation_import_plugin.cpp msgid "Import Languages:" @@ -3461,10 +3461,12 @@ msgid "Set Handle" msgstr "핸들 설정" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp msgid "Add/Remove Color Ramp Point" msgstr "칼라 램프 포인트 추가/삭제" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp #: editor/plugins/shader_graph_editor_plugin.cpp msgid "Modify Color Ramp" msgstr "칼라 램프 수정" @@ -3499,6 +3501,11 @@ msgstr "씬으로부터 가져오기" msgid "Update from Scene" msgstr "씬으로부터 갱신하기" +#: editor/plugins/curve_editor_plugin.cpp +#, fuzzy +msgid "Modify Curve" +msgstr "커브맵 수정" + #: editor/plugins/item_list_editor_plugin.cpp msgid "Item %d" msgstr "항목 %d" @@ -3804,6 +3811,10 @@ msgid "Node does not contain geometry (faces)." msgstr "노드가 지오미트리를 포함하고 있지 않습니다 (페이스)." #: editor/plugins/particles_editor_plugin.cpp +msgid "A processor material of type 'ParticlesMaterial' is required." +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp msgid "Faces contain no area!" msgstr "페이스가 영역을 가지고 있지 않습니다!" @@ -3816,11 +3827,13 @@ msgid "Generate AABB" msgstr "AABB 생성" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Mesh" +#, fuzzy +msgid "Create Emission Points From Mesh" msgstr "메쉬로부터 에미터 만들기" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Node" +#, fuzzy +msgid "Create Emission Points From Node" msgstr "노드로부터 에미터 만들기" #: editor/plugins/particles_editor_plugin.cpp @@ -3832,21 +3845,28 @@ msgid "Create Emitter" msgstr "에미터 만들기" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Positions:" +#, fuzzy +msgid "Emission Points:" msgstr "에미션 위치:" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Fill:" -msgstr "에미션 채움:" +#, fuzzy +msgid "Surface Points" +msgstr "서페이스 %d" #: editor/plugins/particles_editor_plugin.cpp -msgid "Surface" -msgstr "출사면" +msgid "Surface Points+Normal (Directed)" +msgstr "" #: editor/plugins/particles_editor_plugin.cpp msgid "Volume" msgstr "배출량" +#: editor/plugins/particles_editor_plugin.cpp +#, fuzzy +msgid "Emission Source: " +msgstr "에미션 채움:" + #: editor/plugins/path_2d_editor_plugin.cpp msgid "Remove Point from Curve" msgstr "커브에서 포인트 삭제" @@ -5168,12 +5188,14 @@ msgid "Invalid project path, the path must exist!" msgstr "프로젝트 경로가 유효하지 않습니다. 경로가 반드시 존재해야 합니다!" #: editor/project_manager.cpp +#, fuzzy msgid "Invalid project path, godot.cfg must not exist." -msgstr "프로젝트 경로가 유효하지 않습니다. godot.cfg가 있으면 안됩니다." +msgstr "프로젝트 경로가 유효하지 않습니다. engine.cfg가 있으면 안됩니다." #: editor/project_manager.cpp +#, fuzzy msgid "Invalid project path, godot.cfg must exist." -msgstr "프로젝트 경로가 유효하지 않습니다. godot.cfg가 존재해야합니다." +msgstr "프로젝트 경로가 유효하지 않습니다. engine.cfg가 존재해야합니다." #: editor/project_manager.cpp msgid "Imported Project" @@ -5184,8 +5206,9 @@ msgid "Invalid project path (changed anything?)." msgstr "유효하지 않은 프로젝트 경로 (뭔가 변경하신 거라도?)." #: editor/project_manager.cpp +#, fuzzy msgid "Couldn't create godot.cfg in project path." -msgstr "프로젝트 경로에 godot.cfg를 생성할 수 없습니다." +msgstr "프로젝트 경로에 engine.cfg를 생성할 수 없습니다." #: editor/project_manager.cpp msgid "The following files failed extraction from package:" @@ -5468,8 +5491,9 @@ msgid "Remove Resource Remap Option" msgstr "리소스 리맵핑 옵션 제거" #: editor/project_settings.cpp +#, fuzzy msgid "Project Settings (godot.cfg)" -msgstr "프로젝트 설정 (godot.cfg)" +msgstr "프로젝트 설정 (engine.cfg)" #: editor/project_settings.cpp editor/settings_config_dialog.cpp msgid "General" @@ -6144,9 +6168,8 @@ msgid "Change Notifier Extents" msgstr "Notifier 범위 변경" #: editor/spatial_editor_gizmos.cpp -#, fuzzy msgid "Change Probe Extents" -msgstr "Notifier 범위 변경" +msgstr "프로브 범위 변경" #: modules/gdscript/gd_functions.cpp #: modules/visual_script/visual_script_builtin_funcs.cpp @@ -6465,7 +6488,32 @@ msgstr "" msgid "just released" msgstr "" +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Run in Browser" +msgstr "찾아보기" + +#: platform/javascript/export/export.cpp +msgid "Run exported HTML in the system's default browser." +msgstr "" + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not write file:\n" +msgstr "타일을 찾을 수 없음:" + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not read file:\n" +msgstr "타일을 찾을 수 없음:" + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not open template for export:\n" +msgstr "폴더를 만들 수 없습니다." + #: platform/uwp/export/export.cpp +#, fuzzy msgid "" "Couldn't read the certificate file. Are the path and password both correct?" msgstr "인증서 파일을 읽을 수 없습니다. 경로와 비밀번호가 정확합니까?" @@ -6780,6 +6828,9 @@ msgstr "" "합니다. 그렇지 않을 경우, 화면에 표시하기 위해서는 Render target으로 설정하" "고 내부적인 텍스쳐를 다른 노드에 할당해야 합니다." +#~ msgid "Surface" +#~ msgstr "출사면" + #~ msgid "" #~ "A SampleLibrary resource must be created or set in the 'samples' property " #~ "in order for SamplePlayer to play sound." @@ -6824,33 +6875,26 @@ msgstr "" #~ msgid "No exporter for platform '%s' yet." #~ msgstr "'%s' 플랫폼으로 내보내기 위한 템플릿 파일이 없습니다." -#, fuzzy #~ msgid "Create Android keystore" -#~ msgstr "새 리소스 만들기" +#~ msgstr "안드로이드 키스토어 만들기" -#, fuzzy #~ msgid "Full name" -#~ msgstr "유요한 이름" +#~ msgstr "성명" -#, fuzzy #~ msgid "Organization" -#~ msgstr "전환" +#~ msgstr "조직" -#, fuzzy #~ msgid "State" -#~ msgstr "상태:" +#~ msgstr "주(State)" -#, fuzzy #~ msgid "Password" -#~ msgstr "암호:" +#~ msgstr "암호" -#, fuzzy #~ msgid "at least 6 characters" -#~ msgstr "유효한 문자:" +#~ msgstr "최소 6 글자" -#, fuzzy #~ msgid "File name" -#~ msgstr "새 이름:" +#~ msgstr "파일명" #~ msgid "Include" #~ msgstr "포함" diff --git a/editor/translations/nb.po b/editor/translations/nb.po index c9dc30e246..e452e85cd9 100644 --- a/editor/translations/nb.po +++ b/editor/translations/nb.po @@ -2,20 +2,21 @@ # Copyright (C) 2016-2017 Juan Linietsky, Ariel Manzur and the Godot community # This file is distributed under the same license as the Godot source code. # +# Anonymous <GentleSaucepan@protonmail.com>, 2017. # Jørgen Aarmo Lund <jorgen.aarmo@gmail.com>, 2016. # msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" -"PO-Revision-Date: 2016-08-29 19:46+0000\n" -"Last-Translator: Jørgen Aarmo Lund <jorgen.aarmo@gmail.com>\n" +"PO-Revision-Date: 2017-04-06 17:20+0000\n" +"Last-Translator: Anonymous <GentleSaucepan@protonmail.com>\n" "Language-Team: Norwegian Bokmål <https://hosted.weblate.org/projects/godot-" "engine/godot/nb/>\n" "Language: nb\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8-bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 2.8-dev\n" +"X-Generator: Weblate 2.13-dev\n" #: editor/animation_editor.cpp msgid "Disabled" @@ -408,7 +409,7 @@ msgstr "" #: editor/call_dialog.cpp modules/visual_script/visual_script_editor.cpp msgid "Call" -msgstr "" +msgstr "Ring" #: editor/call_dialog.cpp editor/connections_dialog.cpp #: editor/export_template_manager.cpp @@ -422,7 +423,7 @@ msgstr "" #: editor/settings_config_dialog.cpp #: modules/visual_script/visual_script_editor.cpp msgid "Close" -msgstr "" +msgstr "Lukk" #: editor/call_dialog.cpp msgid "Method List:" @@ -910,7 +911,7 @@ msgstr "" msgid "Packing" msgstr "" -#: editor/editor_export.cpp +#: editor/editor_export.cpp platform/javascript/export/export.cpp msgid "Template file not found:\n" msgstr "" @@ -1066,7 +1067,7 @@ msgstr "" #: editor/editor_help.cpp modules/visual_script/visual_script_editor.cpp msgid "Members:" -msgstr "" +msgstr "Medlemmer:" #: editor/editor_help.cpp msgid "Public Methods:" @@ -1078,7 +1079,7 @@ msgstr "" #: editor/editor_help.cpp modules/visual_script/visual_script_editor.cpp msgid "Signals:" -msgstr "" +msgstr "Signaler:" #: editor/editor_help.cpp msgid "Constants:" @@ -3189,7 +3190,7 @@ msgstr "" #: editor/plugins/shader_editor_plugin.cpp editor/project_manager.cpp #: modules/visual_script/visual_script_editor.cpp msgid "Edit" -msgstr "" +msgstr "Rediger" #: editor/plugins/canvas_item_editor_plugin.cpp #: editor/plugins/spatial_editor_plugin.cpp @@ -3382,10 +3383,12 @@ msgid "Set Handle" msgstr "" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp msgid "Add/Remove Color Ramp Point" msgstr "" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp #: editor/plugins/shader_graph_editor_plugin.cpp msgid "Modify Color Ramp" msgstr "" @@ -3420,6 +3423,10 @@ msgstr "" msgid "Update from Scene" msgstr "" +#: editor/plugins/curve_editor_plugin.cpp +msgid "Modify Curve" +msgstr "" + #: editor/plugins/item_list_editor_plugin.cpp msgid "Item %d" msgstr "" @@ -3721,6 +3728,10 @@ msgid "Node does not contain geometry (faces)." msgstr "" #: editor/plugins/particles_editor_plugin.cpp +msgid "A processor material of type 'ParticlesMaterial' is required." +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp msgid "Faces contain no area!" msgstr "" @@ -3733,11 +3744,11 @@ msgid "Generate AABB" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Mesh" +msgid "Create Emission Points From Mesh" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Node" +msgid "Create Emission Points From Node" msgstr "" #: editor/plugins/particles_editor_plugin.cpp @@ -3749,21 +3760,25 @@ msgid "Create Emitter" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Positions:" +msgid "Emission Points:" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Fill:" +msgid "Surface Points" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Surface" +msgid "Surface Points+Normal (Directed)" msgstr "" #: editor/plugins/particles_editor_plugin.cpp msgid "Volume" msgstr "" +#: editor/plugins/particles_editor_plugin.cpp +msgid "Emission Source: " +msgstr "" + #: editor/plugins/path_2d_editor_plugin.cpp msgid "Remove Point from Curve" msgstr "" @@ -5490,8 +5505,9 @@ msgid "Couldn't load image" msgstr "" #: editor/property_editor.cpp +#, fuzzy msgid "Pick a Node" -msgstr "" +msgstr "Lim inn Noder" #: editor/property_editor.cpp msgid "Bit %d, val %d." @@ -5503,7 +5519,7 @@ msgstr "" #: editor/property_editor.cpp modules/visual_script/visual_script_editor.cpp msgid "Set" -msgstr "" +msgstr "Sett" #: editor/property_editor.cpp msgid "Properties:" @@ -5714,8 +5730,9 @@ msgid "Save Branch as Scene" msgstr "" #: editor/scene_tree_dock.cpp +#, fuzzy msgid "Copy Node Path" -msgstr "" +msgstr "Kopier Noder" #: editor/scene_tree_dock.cpp msgid "Delete (No Confirm)" @@ -6059,11 +6076,11 @@ msgstr "" #: modules/gdscript/gd_functions.cpp msgid "Not based on a script" -msgstr "" +msgstr "Ikke basert på et skript" #: modules/gdscript/gd_functions.cpp msgid "Not based on a resource file" -msgstr "" +msgstr "Ikke basert på en ressursfil" #: modules/gdscript/gd_functions.cpp msgid "Invalid instance dictionary format (missing @path)" @@ -6098,6 +6115,8 @@ msgid "" "Return value must be assigned to first element of node working memory! Fix " "your node please." msgstr "" +"Returverdi må bli tidelt til det første elementet av node fungerende minne! " +"Fiks noden din vær så snill." #: modules/visual_script/visual_script.cpp msgid "Node returned an invalid sequence output: " @@ -6113,19 +6132,19 @@ msgstr "" #: modules/visual_script/visual_script_editor.cpp msgid "Functions:" -msgstr "" +msgstr "Funksjoner:" #: modules/visual_script/visual_script_editor.cpp msgid "Variables:" -msgstr "" +msgstr "Variabler:" #: modules/visual_script/visual_script_editor.cpp msgid "Name is not a valid identifier:" -msgstr "" +msgstr "Navn er ikke en gyldig identifikator:" #: modules/visual_script/visual_script_editor.cpp msgid "Name already in use by another func/var/signal:" -msgstr "" +msgstr "Navn er allerede brykt av en annen funksjon/var/signal:" #: modules/visual_script/visual_script_editor.cpp msgid "Rename Function" @@ -6153,7 +6172,7 @@ msgstr "" #: modules/visual_script/visual_script_editor.cpp msgid "Remove Function" -msgstr "" +msgstr "Fjern Funksjon" #: modules/visual_script/visual_script_editor.cpp msgid "Remove Variable" @@ -6182,6 +6201,8 @@ msgstr "" #: modules/visual_script/visual_script_editor.cpp msgid "Hold Meta to drop a Getter. Hold Shift to drop a generic signature." msgstr "" +"Hold Meta for å slippe en Getter. Hold Skift for å slippe en generisk " +"signatur." #: modules/visual_script/visual_script_editor.cpp msgid "Hold Ctrl to drop a Getter. Hold Shift to drop a generic signature." @@ -6189,11 +6210,11 @@ msgstr "" #: modules/visual_script/visual_script_editor.cpp msgid "Hold Meta to drop a simple reference to the node." -msgstr "" +msgstr "Hold Meta for å slippe en enkel referanse til noden." #: modules/visual_script/visual_script_editor.cpp msgid "Hold Ctrl to drop a simple reference to the node." -msgstr "" +msgstr "Hold Ctrl for å slippe en simpel referanse til noden." #: modules/visual_script/visual_script_editor.cpp msgid "Hold Meta to drop a Variable Setter." @@ -6209,7 +6230,7 @@ msgstr "" #: modules/visual_script/visual_script_editor.cpp msgid "Add Node(s) From Tree" -msgstr "" +msgstr "Legg til node(r) fra tre" #: modules/visual_script/visual_script_editor.cpp msgid "Add Getter Property" @@ -6221,15 +6242,15 @@ msgstr "" #: modules/visual_script/visual_script_editor.cpp msgid "Condition" -msgstr "" +msgstr "Betingelse" #: modules/visual_script/visual_script_editor.cpp msgid "Sequence" -msgstr "" +msgstr "Sekvens" #: modules/visual_script/visual_script_editor.cpp msgid "Switch" -msgstr "" +msgstr "Bryter" #: modules/visual_script/visual_script_editor.cpp msgid "Iterator" @@ -6237,15 +6258,15 @@ msgstr "" #: modules/visual_script/visual_script_editor.cpp msgid "While" -msgstr "" +msgstr "Mens" #: modules/visual_script/visual_script_editor.cpp msgid "Return" -msgstr "" +msgstr "Returner" #: modules/visual_script/visual_script_editor.cpp msgid "Get" -msgstr "" +msgstr "Få" #: modules/visual_script/visual_script_editor.cpp msgid "Base Type:" @@ -6253,55 +6274,56 @@ msgstr "" #: modules/visual_script/visual_script_editor.cpp msgid "Available Nodes:" -msgstr "" +msgstr "Tilgjengelige Noder:" #: modules/visual_script/visual_script_editor.cpp msgid "Select or create a function to edit graph" -msgstr "" +msgstr "Velg eller lag en funksjon for å redigere graf" #: modules/visual_script/visual_script_editor.cpp msgid "Edit Signal Arguments:" -msgstr "" +msgstr "Forandre Signal Argumenter:" #: modules/visual_script/visual_script_editor.cpp msgid "Edit Variable:" -msgstr "" +msgstr "Rediger Variabel:" #: modules/visual_script/visual_script_editor.cpp msgid "Change" -msgstr "" +msgstr "Forandre" #: modules/visual_script/visual_script_editor.cpp msgid "Delete Selected" -msgstr "" +msgstr "Slett Valgte" #: modules/visual_script/visual_script_editor.cpp msgid "Find Node Type" -msgstr "" +msgstr "Finn Node Type" #: modules/visual_script/visual_script_editor.cpp msgid "Copy Nodes" -msgstr "" +msgstr "Kopier Noder" #: modules/visual_script/visual_script_editor.cpp +#, fuzzy msgid "Cut Nodes" -msgstr "" +msgstr "Kutt Noder" #: modules/visual_script/visual_script_editor.cpp msgid "Paste Nodes" -msgstr "" +msgstr "Lim inn Noder" #: modules/visual_script/visual_script_flow_control.cpp msgid "Input type not iterable: " -msgstr "" +msgstr "Tilførseltype ikke itererbar: " #: modules/visual_script/visual_script_flow_control.cpp msgid "Iterator became invalid" -msgstr "" +msgstr "Iterator ble ugyldig" #: modules/visual_script/visual_script_flow_control.cpp msgid "Iterator became invalid: " -msgstr "" +msgstr "Iterator ble ugyldig: " #: modules/visual_script/visual_script_func_nodes.cpp msgid "Invalid index property name." @@ -6309,23 +6331,23 @@ msgstr "" #: modules/visual_script/visual_script_func_nodes.cpp msgid "Base object is not a Node!" -msgstr "" +msgstr "Baseobjekt er ikke en Node!" #: modules/visual_script/visual_script_func_nodes.cpp msgid "Path does not lead Node!" -msgstr "" +msgstr "Sti leder ikke Node!" #: modules/visual_script/visual_script_func_nodes.cpp msgid "Invalid index property name '%s' in node %s." -msgstr "" +msgstr "Ugyldig indeks egenskap navn '%s' i node %s." #: modules/visual_script/visual_script_nodes.cpp msgid ": Invalid argument of type: " -msgstr "" +msgstr ": Ugyldig argument av type: " #: modules/visual_script/visual_script_nodes.cpp msgid ": Invalid arguments: " -msgstr "" +msgstr ": Ugyldige argumenter: " #: modules/visual_script/visual_script_nodes.cpp msgid "VariableGet not found in script: " @@ -6353,6 +6375,26 @@ msgstr "" msgid "just released" msgstr "" +#: platform/javascript/export/export.cpp +msgid "Run in Browser" +msgstr "" + +#: platform/javascript/export/export.cpp +msgid "Run exported HTML in the system's default browser." +msgstr "" + +#: platform/javascript/export/export.cpp +msgid "Could not write file:\n" +msgstr "" + +#: platform/javascript/export/export.cpp +msgid "Could not read file:\n" +msgstr "" + +#: platform/javascript/export/export.cpp +msgid "Could not open template for export:\n" +msgstr "" + #: platform/uwp/export/export.cpp msgid "" "Couldn't read the certificate file. Are the path and password both correct?" diff --git a/editor/translations/nl.po b/editor/translations/nl.po new file mode 100644 index 0000000000..74d75c0a01 --- /dev/null +++ b/editor/translations/nl.po @@ -0,0 +1,6808 @@ +# Dutch translation of the Godot Engine editor +# Copyright (C) 2016-2017 Juan Linietsky, Ariel Manzur and the Godot community +# This file is distributed under the same license as the Godot source code. +# +# Aram Nap <xyphex.aram@gmail.com>, 2017 +# +msgid "" +msgstr "" +"Project-Id-Version: Godot Engine editor\n" +"PO-Revision-Date: 2017-04-06 20:13+0000\n" +"Last-Translator: Aram Nap <xyphex.aram@gmail.com>\n" +"Language-Team: Dutch <https://hosted.weblate.org/projects/godot-engine/godot/" +"nl/>\n" +"Language: nl\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8-bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 2.13-dev\n" + +#: editor/animation_editor.cpp +msgid "Disabled" +msgstr "Uitgeschakeld" + +#: editor/animation_editor.cpp +msgid "All Selection" +msgstr "Alle Selectie" + +#: editor/animation_editor.cpp +msgid "Move Add Key" +msgstr "Verplaats Key Toevoegen" + +#: editor/animation_editor.cpp +msgid "Anim Change Transition" +msgstr "Anim Wijzig Overgang" + +#: editor/animation_editor.cpp +msgid "Anim Change Transform" +msgstr "Anim Wijzig Transform" + +#: editor/animation_editor.cpp +msgid "Anim Change Value" +msgstr "Anim Wijzig Waarde" + +#: editor/animation_editor.cpp +msgid "Anim Change Call" +msgstr "Anim Wijzig Aanroep" + +#: editor/animation_editor.cpp +msgid "Anim Add Track" +msgstr "Anim Track Toevoegen" + +#: editor/animation_editor.cpp +msgid "Anim Duplicate Keys" +msgstr "Anim Dupliceer Keys" + +#: editor/animation_editor.cpp +msgid "Move Anim Track Up" +msgstr "Verplaats Anim Track Omhoog" + +#: editor/animation_editor.cpp +msgid "Move Anim Track Down" +msgstr "Verplaats Anim Track Omlaag" + +#: editor/animation_editor.cpp +msgid "Remove Anim Track" +msgstr "Verwijder Anim Track" + +#: editor/animation_editor.cpp +msgid "Set Transitions to:" +msgstr "Zet Overgangen Naar:" + +#: editor/animation_editor.cpp +msgid "Anim Track Rename" +msgstr "Anim Track Hernoemen" + +#: editor/animation_editor.cpp +msgid "Anim Track Change Interpolation" +msgstr "Anim Track Wijzig Interpolatie" + +#: editor/animation_editor.cpp +msgid "Anim Track Change Value Mode" +msgstr "Anim Track Wijzig Waarde Modus" + +#: editor/animation_editor.cpp +#, fuzzy +msgid "Anim Track Change Wrap Mode" +msgstr "Anim Track Wijzig Waarde Modus" + +#: editor/animation_editor.cpp +msgid "Edit Node Curve" +msgstr "Wijzig Node Curve" + +#: editor/animation_editor.cpp +msgid "Edit Selection Curve" +msgstr "Wijzig Selectie Curve" + +#: editor/animation_editor.cpp +msgid "Anim Delete Keys" +msgstr "Anim Verwijder Keys" + +#: editor/animation_editor.cpp editor/plugins/tile_map_editor_plugin.cpp +msgid "Duplicate Selection" +msgstr "Dupliceer Selectie" + +#: editor/animation_editor.cpp +msgid "Duplicate Transposed" +msgstr "Dupliceer Getransponeerde" + +#: editor/animation_editor.cpp +msgid "Remove Selection" +msgstr "Verwijder Selectie" + +#: editor/animation_editor.cpp +msgid "Continuous" +msgstr "Doorlopend" + +#: editor/animation_editor.cpp +msgid "Discrete" +msgstr "Discreet" + +#: editor/animation_editor.cpp +msgid "Trigger" +msgstr "Trigger" + +#: editor/animation_editor.cpp +msgid "Anim Add Key" +msgstr "Anim Key Toevoegen" + +#: editor/animation_editor.cpp +msgid "Anim Move Keys" +msgstr "Anim Verplaats Keys" + +#: editor/animation_editor.cpp +msgid "Scale Selection" +msgstr "Schaal Selectie" + +#: editor/animation_editor.cpp +msgid "Scale From Cursor" +msgstr "Schaal Vanaf Cursor" + +#: editor/animation_editor.cpp +msgid "Goto Next Step" +msgstr "Ga Naar Volgende Stap" + +#: editor/animation_editor.cpp +msgid "Goto Prev Step" +msgstr "Ga Naar Vorige Stap" + +#: editor/animation_editor.cpp editor/property_editor.cpp +msgid "Linear" +msgstr "Lineair" + +#: editor/animation_editor.cpp editor/plugins/theme_editor_plugin.cpp +msgid "Constant" +msgstr "Constant" + +#: editor/animation_editor.cpp +msgid "In" +msgstr "In" + +#: editor/animation_editor.cpp +msgid "Out" +msgstr "Uit" + +#: editor/animation_editor.cpp +msgid "In-Out" +msgstr "In-Uit" + +#: editor/animation_editor.cpp +msgid "Out-In" +msgstr "Uit-In" + +#: editor/animation_editor.cpp +msgid "Transitions" +msgstr "Transities" + +#: editor/animation_editor.cpp +msgid "Optimize Animation" +msgstr "Optimaliseer Animatie" + +#: editor/animation_editor.cpp +msgid "Clean-Up Animation" +msgstr "Animatie Opschonen" + +#: editor/animation_editor.cpp +msgid "Create NEW track for %s and insert key?" +msgstr "NIEUWE track aanmaken voor %s en key invoegen?" + +#: editor/animation_editor.cpp +msgid "Create %d NEW tracks and insert keys?" +msgstr "Maak %d NIEUWE tracks aan en keys invoeren?" + +#: editor/animation_editor.cpp editor/create_dialog.cpp +#: editor/editor_audio_buses.cpp +#: editor/plugins/light_occluder_2d_editor_plugin.cpp +#: editor/plugins/mesh_instance_editor_plugin.cpp +#: editor/plugins/navigation_polygon_editor_plugin.cpp +#: editor/plugins/particles_editor_plugin.cpp editor/project_manager.cpp +#: editor/script_create_dialog.cpp +msgid "Create" +msgstr "Maken" + +#: editor/animation_editor.cpp +msgid "Anim Create & Insert" +msgstr "Anim Maken & Invoegen" + +#: editor/animation_editor.cpp +msgid "Anim Insert Track & Key" +msgstr "Anim Track & Key Invoegen" + +#: editor/animation_editor.cpp +msgid "Anim Insert Key" +msgstr "Anim Key Invoegen" + +#: editor/animation_editor.cpp +msgid "Change Anim Len" +msgstr "Wijzig Anim Lengte" + +#: editor/animation_editor.cpp +msgid "Change Anim Loop" +msgstr "Wijzig Anim Lus" + +#: editor/animation_editor.cpp +msgid "Anim Create Typed Value Key" +msgstr "Anim Getypeerd Waarde Key Aanmaken" + +#: editor/animation_editor.cpp +msgid "Anim Insert" +msgstr "Anim Invoegen" + +#: editor/animation_editor.cpp +msgid "Anim Scale Keys" +msgstr "Anim Schaal Keys" + +#: editor/animation_editor.cpp +msgid "Anim Add Call Track" +msgstr "Anim Aanroep Track Toevoegen" + +#: editor/animation_editor.cpp +msgid "Animation zoom." +msgstr "Animatie zoom." + +#: editor/animation_editor.cpp +msgid "Length (s):" +msgstr "Lengte(s):" + +#: editor/animation_editor.cpp +msgid "Animation length (in seconds)." +msgstr "Animatie lengte (in seconden)." + +#: editor/animation_editor.cpp +msgid "Step (s):" +msgstr "Stap(pen):" + +#: editor/animation_editor.cpp +msgid "Cursor step snap (in seconds)." +msgstr "Cursor stap snap (in seconden)." + +#: editor/animation_editor.cpp +msgid "Enable/Disable looping in animation." +msgstr "In- en uitschakelen van loopen in animatie." + +#: editor/animation_editor.cpp +msgid "Add new tracks." +msgstr "Nieuwe tracks toevoegen." + +#: editor/animation_editor.cpp +msgid "Move current track up." +msgstr "Verplaats huidige track naar boven." + +#: editor/animation_editor.cpp +msgid "Move current track down." +msgstr "Verplaats huidige track naar beneden." + +#: editor/animation_editor.cpp +msgid "Remove selected track." +msgstr "Verwijder geselecteerde track." + +#: editor/animation_editor.cpp +msgid "Track tools" +msgstr "Track tools" + +#: editor/animation_editor.cpp +msgid "Enable editing of individual keys by clicking them." +msgstr "Schakel het individueel aanpassen van keys in door op ze te klikken." + +#: editor/animation_editor.cpp +msgid "Anim. Optimizer" +msgstr "Anim. Optimalisator" + +#: editor/animation_editor.cpp +msgid "Max. Linear Error:" +msgstr "Max. Lineair Error:" + +#: editor/animation_editor.cpp +msgid "Max. Angular Error:" +msgstr "Max. Hoekig Error:" + +#: editor/animation_editor.cpp +msgid "Max Optimizable Angle:" +msgstr "Maximale Optimaliseerbare Hoek:" + +#: editor/animation_editor.cpp +msgid "Optimize" +msgstr "Optimaliseren" + +#: editor/animation_editor.cpp +msgid "Select an AnimationPlayer from the Scene Tree to edit animations." +msgstr "" +"Selecteer een AnimationPlayer uit de Scene Tree om animaties te wijzigen." + +#: editor/animation_editor.cpp +msgid "Key" +msgstr "Key" + +#: editor/animation_editor.cpp +msgid "Transition" +msgstr "Transitie" + +#: editor/animation_editor.cpp +msgid "Scale Ratio:" +msgstr "Schaal Ratio:" + +#: editor/animation_editor.cpp +msgid "Call Functions in Which Node?" +msgstr "Roep Functies Aan in Welke Node?" + +#: editor/animation_editor.cpp +msgid "Remove invalid keys" +msgstr "Verwijder ongeldige keys" + +#: editor/animation_editor.cpp +msgid "Remove unresolved and empty tracks" +msgstr "Verwijder onopgeloste en lege tracks" + +#: editor/animation_editor.cpp +msgid "Clean-up all animations" +msgstr "Alle animaties opruimen" + +#: editor/animation_editor.cpp +msgid "Clean-Up Animation(s) (NO UNDO!)" +msgstr "Animatie(s) Opruimen (KAN NIET ONGEDAAN WORDEN!)" + +#: editor/animation_editor.cpp +msgid "Clean-Up" +msgstr "Opruimen" + +#: editor/array_property_edit.cpp +msgid "Resize Array" +msgstr "Array van Grootte Veranderen" + +#: editor/array_property_edit.cpp +msgid "Change Array Value Type" +msgstr "Wijzig Array Waarde Type" + +#: editor/array_property_edit.cpp +msgid "Change Array Value" +msgstr "Wijzig Array Waarde" + +#: editor/asset_library_editor_plugin.cpp editor/create_dialog.cpp +#: editor/editor_help.cpp editor/editor_node.cpp +#: editor/plugins/script_editor_plugin.cpp editor/property_selector.cpp +#: editor/quick_open.cpp editor/settings_config_dialog.cpp +msgid "Search:" +msgstr "Zoeken:" + +#: editor/asset_library_editor_plugin.cpp +msgid "Sort:" +msgstr "Sorteren:" + +#: editor/asset_library_editor_plugin.cpp +msgid "Reverse" +msgstr "Omkeren" + +#: editor/asset_library_editor_plugin.cpp editor/project_settings.cpp +msgid "Category:" +msgstr "Categorie:" + +#: editor/asset_library_editor_plugin.cpp +msgid "All" +msgstr "Alle" + +#: editor/asset_library_editor_plugin.cpp +msgid "Site:" +msgstr "Site:" + +#: editor/asset_library_editor_plugin.cpp +msgid "Support.." +msgstr "Ondersteuning.." + +#: editor/asset_library_editor_plugin.cpp +msgid "Official" +msgstr "Officieel" + +#: editor/asset_library_editor_plugin.cpp +msgid "Community" +msgstr "Gemeenschap" + +#: editor/asset_library_editor_plugin.cpp +#, fuzzy +msgid "Testing" +msgstr "Testen" + +#: editor/asset_library_editor_plugin.cpp +msgid "Assets ZIP File" +msgstr "Assets ZIP Bestand" + +#: editor/call_dialog.cpp +msgid "Method List For '%s':" +msgstr "Methode Lijst Voor '%s':" + +#: editor/call_dialog.cpp modules/visual_script/visual_script_editor.cpp +msgid "Call" +msgstr "Aanroep" + +#: editor/call_dialog.cpp editor/connections_dialog.cpp +#: editor/export_template_manager.cpp +#: editor/plugins/animation_player_editor_plugin.cpp +#: editor/plugins/canvas_item_editor_plugin.cpp +#: editor/plugins/resource_preloader_editor_plugin.cpp +#: editor/plugins/sample_library_editor_plugin.cpp +#: editor/plugins/script_editor_plugin.cpp +#: editor/plugins/sprite_frames_editor_plugin.cpp editor/project_settings.cpp +#: editor/property_editor.cpp editor/run_settings_dialog.cpp +#: editor/settings_config_dialog.cpp +#: modules/visual_script/visual_script_editor.cpp +msgid "Close" +msgstr "Sluiten" + +#: editor/call_dialog.cpp +msgid "Method List:" +msgstr "Methode Lijst:" + +#: editor/call_dialog.cpp +msgid "Arguments:" +msgstr "Argumenten:" + +#: editor/call_dialog.cpp +msgid "Return:" +msgstr "Teruggave:" + +#: editor/code_editor.cpp +msgid "Go to Line" +msgstr "Ga naar Regel" + +#: editor/code_editor.cpp +msgid "Line Number:" +msgstr "Regel Nummer:" + +#: editor/code_editor.cpp +msgid "No Matches" +msgstr "Geen Matches" + +#: editor/code_editor.cpp +#, fuzzy +msgid "Replaced %d occurrence(s)." +msgstr "%d voorgekomen waarde(s) vervangen." + +#: editor/code_editor.cpp +msgid "Replace" +msgstr "Vervangen" + +#: editor/code_editor.cpp +msgid "Replace All" +msgstr "Alle Vervangen" + +#: editor/code_editor.cpp +msgid "Match Case" +msgstr "Hoofdlettergevoelig" + +#: editor/code_editor.cpp +msgid "Whole Words" +msgstr "Hele Woorden" + +#: editor/code_editor.cpp +msgid "Selection Only" +msgstr "Alleen Selectie" + +#: editor/code_editor.cpp editor/editor_help.cpp +#: editor/plugins/script_editor_plugin.cpp +#: editor/plugins/script_text_editor.cpp +#: editor/plugins/shader_editor_plugin.cpp editor/project_settings.cpp +msgid "Search" +msgstr "Zoeken" + +#: editor/code_editor.cpp editor/editor_help.cpp +msgid "Find" +msgstr "Zoeken" + +#: editor/code_editor.cpp +msgid "Next" +msgstr "Volgende" + +#: editor/code_editor.cpp +msgid "Not found!" +msgstr "Niet gevonden!" + +#: editor/code_editor.cpp +msgid "Replace By" +msgstr "Vervangen Door" + +#: editor/code_editor.cpp +msgid "Case Sensitive" +msgstr "Hoofdlettergevoelig" + +#: editor/code_editor.cpp +msgid "Backwards" +msgstr "Achterwaarts" + +#: editor/code_editor.cpp +msgid "Prompt On Replace" +msgstr "Vragen Bij Vervangen" + +#: editor/code_editor.cpp +msgid "Skip" +msgstr "Overslaan" + +#: editor/code_editor.cpp editor/plugins/canvas_item_editor_plugin.cpp +msgid "Zoom In" +msgstr "Inzoomen" + +#: editor/code_editor.cpp editor/plugins/canvas_item_editor_plugin.cpp +msgid "Zoom Out" +msgstr "Uitzoomen" + +#: editor/code_editor.cpp +msgid "Reset Zoom" +msgstr "Reset Zoom" + +#: editor/code_editor.cpp editor/script_editor_debugger.cpp +msgid "Line:" +msgstr "Regel:" + +#: editor/code_editor.cpp +msgid "Col:" +msgstr "Kolom:" + +#: editor/connections_dialog.cpp +msgid "Method in target Node must be specified!" +msgstr "Methode in target Node moet gespecificeerd worden!" + +#: editor/connections_dialog.cpp +msgid "" +"Target method not found! Specify a valid method or attach a script to target " +"Node." +msgstr "" +"Target methode niet gevonden! Specificeer een geldige methode of koppel een " +"script aan de target Node." + +#: editor/connections_dialog.cpp +msgid "Connect To Node:" +msgstr "Verbind Aan Node:" + +#: editor/connections_dialog.cpp editor/editor_autoload_settings.cpp +#: editor/groups_editor.cpp editor/plugins/item_list_editor_plugin.cpp +#: editor/plugins/theme_editor_plugin.cpp editor/project_settings.cpp +msgid "Add" +msgstr "Toevoegen" + +#: editor/connections_dialog.cpp editor/dependency_editor.cpp +#: editor/plugins/animation_tree_editor_plugin.cpp +#: editor/plugins/theme_editor_plugin.cpp editor/project_manager.cpp +msgid "Remove" +msgstr "Verwijderen" + +#: editor/connections_dialog.cpp +msgid "Add Extra Call Argument:" +msgstr "Extra Aanroep Argument Toevoegen:" + +#: editor/connections_dialog.cpp +msgid "Extra Call Arguments:" +msgstr "Extra Aanroep Argumenten:" + +#: editor/connections_dialog.cpp +msgid "Path to Node:" +msgstr "Pad naar Node:" + +#: editor/connections_dialog.cpp +msgid "Make Function" +msgstr "Maak Functie" + +#: editor/connections_dialog.cpp +msgid "Deferred" +msgstr "Uitgesteld" + +#: editor/connections_dialog.cpp +msgid "Oneshot" +msgstr "Eénschots" + +#: editor/connections_dialog.cpp +msgid "Connect" +msgstr "Verbinden" + +#: editor/connections_dialog.cpp +msgid "Connect '%s' to '%s'" +msgstr "Verbind '%s' met '%s'" + +#: editor/connections_dialog.cpp +msgid "Connecting Signal:" +msgstr "Signaal aan het Verbinden:" + +#: editor/connections_dialog.cpp +#, fuzzy +msgid "Create Subscription" +msgstr "Subscriptie Maken" + +#: editor/connections_dialog.cpp +msgid "Connect.." +msgstr "Verbind.." + +#: editor/connections_dialog.cpp +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Disconnect" +msgstr "Losmaken" + +#: editor/connections_dialog.cpp editor/node_dock.cpp +msgid "Signals" +msgstr "Signalen" + +#: editor/create_dialog.cpp +msgid "Create New" +msgstr "Nieuwe Maken" + +#: editor/create_dialog.cpp editor/editor_file_dialog.cpp +#: editor/filesystem_dock.cpp +msgid "Favorites:" +msgstr "Favorieten:" + +#: editor/create_dialog.cpp editor/editor_file_dialog.cpp +msgid "Recent:" +msgstr "Recente:" + +#: editor/create_dialog.cpp editor/editor_help.cpp +#: editor/plugins/script_editor_plugin.cpp editor/property_selector.cpp +#: editor/quick_open.cpp +msgid "Matches:" +msgstr "Matches:" + +#: editor/create_dialog.cpp editor/editor_help.cpp editor/property_selector.cpp +#: editor/script_editor_debugger.cpp +msgid "Description:" +msgstr "Omschrijving:" + +#: editor/dependency_editor.cpp +msgid "Search Replacement For:" +msgstr "Zoek Vervanging Voor:" + +#: editor/dependency_editor.cpp +msgid "Dependencies For:" +msgstr "Afhankelijkheden Voor:" + +#: editor/dependency_editor.cpp +msgid "" +"Scene '%s' is currently being edited.\n" +"Changes will not take effect unless reloaded." +msgstr "" +"Scene '%s' wordt op dit moment gewijzigd.\n" +"Wijzigingen hebben geen effect tenzij ze herladen worden." + +#: editor/dependency_editor.cpp +msgid "" +"Resource '%s' is in use.\n" +"Changes will take effect when reloaded." +msgstr "" +"Resource '%s' is in gebruik.\n" +"Wijzigingen zullen effect hebben wanneer herladen." + +#: editor/dependency_editor.cpp +msgid "Dependencies" +msgstr "Afhankelijkheden" + +#: editor/dependency_editor.cpp +msgid "Resource" +msgstr "Resource" + +#: editor/dependency_editor.cpp editor/editor_autoload_settings.cpp +#: editor/project_manager.cpp editor/project_settings.cpp +msgid "Path" +msgstr "Pad" + +#: editor/dependency_editor.cpp +msgid "Dependencies:" +msgstr "Afhankelijkheden:" + +#: editor/dependency_editor.cpp +msgid "Fix Broken" +msgstr "Gebroken Repareren" + +#: editor/dependency_editor.cpp +msgid "Dependency Editor" +msgstr "Afhankelijkheden Editor" + +#: editor/dependency_editor.cpp +msgid "Search Replacement Resource:" +msgstr "Zoek Vervangende Resource:" + +#: editor/dependency_editor.cpp +msgid "Owners Of:" +msgstr "Eigenaren Van:" + +#: editor/dependency_editor.cpp +msgid "" +"The files being removed are required by other resources in order for them to " +"work.\n" +"Remove them anyway? (no undo)" +msgstr "" +"De bestanden die verwijderd worden zijn vereist door andere resources om ze " +"te laten werken.\n" +"Toch verwijderen? (Kan niet ongedaan worden.)" + +#: editor/dependency_editor.cpp +msgid "Remove selected files from the project? (no undo)" +msgstr "" +"Verwijder geselecteerde bestanden van het project? (Kan niet ongedaan " +"worden.)" + +#: editor/dependency_editor.cpp +msgid "Error loading:" +msgstr "Error bij het laden van:" + +#: editor/dependency_editor.cpp +msgid "Scene failed to load due to missing dependencies:" +msgstr "Scene faalde om te laden door ontbrekende afhankelijkheden:" + +#: editor/dependency_editor.cpp editor/editor_node.cpp +msgid "Open Anyway" +msgstr "Toch Openen" + +#: editor/dependency_editor.cpp +msgid "Which action should be taken?" +msgstr "Welke actie moet ondernomen worden?" + +#: editor/dependency_editor.cpp +msgid "Fix Dependencies" +msgstr "Repareer Afhankelijkheden" + +#: editor/dependency_editor.cpp +msgid "Errors loading!" +msgstr "Errors bij het laden!" + +#: editor/dependency_editor.cpp +msgid "Permanently delete %d item(s)? (No undo!)" +msgstr "%d item(s) permanent verwijderen? (Kan niet ongedaan worden!)" + +#: editor/dependency_editor.cpp +msgid "Owns" +msgstr "Eigenaar Van" + +#: editor/dependency_editor.cpp +msgid "Resources Without Explicit Ownership:" +msgstr "Resources Zonder Expliciet Bezit:" + +#: editor/dependency_editor.cpp editor/editor_node.cpp +msgid "Orphan Resource Explorer" +msgstr "Wees Resource Verkenner" + +#: editor/dependency_editor.cpp +msgid "Delete selected files?" +msgstr "Verwijder geselecteerde bestanden?" + +#: editor/dependency_editor.cpp editor/editor_node.cpp +#: editor/filesystem_dock.cpp editor/plugins/item_list_editor_plugin.cpp +#: editor/project_export.cpp editor/scene_tree_dock.cpp +msgid "Delete" +msgstr "Verwijder" + +#: editor/editor_audio_buses.cpp +msgid "Save Audio Bus Layout As.." +msgstr "" + +#: editor/editor_audio_buses.cpp +msgid "Location for New Layout.." +msgstr "" + +#: editor/editor_audio_buses.cpp +msgid "Open Audio Bus Layout" +msgstr "" + +#: editor/editor_audio_buses.cpp +msgid "Add Bus" +msgstr "" + +#: editor/editor_audio_buses.cpp editor/property_editor.cpp +#: editor/script_create_dialog.cpp +msgid "Load" +msgstr "" + +#: editor/editor_audio_buses.cpp +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Save As" +msgstr "" + +#: editor/editor_audio_buses.cpp editor/editor_node.cpp editor/import_dock.cpp +msgid "Default" +msgstr "" + +#: editor/editor_autoload_settings.cpp +msgid "Invalid name." +msgstr "Ongeldige naam." + +#: editor/editor_autoload_settings.cpp +msgid "Valid characters:" +msgstr "Geldige karakters:" + +#: editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing engine class name." +msgstr "Ongeldige naam. Moet niet botsen met een bestaande engine klasse naam." + +#: editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing buit-in type name." +msgstr "" +"Ongeldige naam. Mag niet botsen met een bestaande ingebouwde type naam." + +#: editor/editor_autoload_settings.cpp +msgid "Invalid name. Must not collide with an existing global constant name." +msgstr "" +"Ongeldige naam. Mag niet botsen met de naam van een bestaande globale " +"constante." + +#: editor/editor_autoload_settings.cpp +msgid "Invalid Path." +msgstr "Ongeldig Pad." + +#: editor/editor_autoload_settings.cpp +msgid "File does not exist." +msgstr "Bestand bestaat niet." + +#: editor/editor_autoload_settings.cpp +msgid "Not in resource path." +msgstr "Niet in resource pad." + +#: editor/editor_autoload_settings.cpp +msgid "Add AutoLoad" +msgstr "AutoLoad Toevoegen" + +#: editor/editor_autoload_settings.cpp +msgid "Autoload '%s' already exists!" +msgstr "Autoload '%s' bestaat al!" + +#: editor/editor_autoload_settings.cpp +msgid "Rename Autoload" +msgstr "Autoload Hernoemen" + +#: editor/editor_autoload_settings.cpp +msgid "Toggle AutoLoad Globals" +msgstr "Toggle AutoLoad Globals" + +#: editor/editor_autoload_settings.cpp +msgid "Move Autoload" +msgstr "Verplaats Autoload" + +#: editor/editor_autoload_settings.cpp +msgid "Remove Autoload" +msgstr "Verwijder Autoload" + +#: editor/editor_autoload_settings.cpp +msgid "Enable" +msgstr "Inschakelen" + +#: editor/editor_autoload_settings.cpp +msgid "Rearrange Autoloads" +msgstr "Herschik Autoloads" + +#: editor/editor_autoload_settings.cpp editor/editor_file_dialog.cpp +#: editor/io_plugins/editor_font_import_plugin.cpp +#: editor/script_create_dialog.cpp scene/gui/file_dialog.cpp +msgid "Path:" +msgstr "Pad:" + +#: editor/editor_autoload_settings.cpp +msgid "Node Name:" +msgstr "Node Naam:" + +#: editor/editor_autoload_settings.cpp +#: editor/io_plugins/editor_scene_import_plugin.cpp +#: editor/plugins/sample_library_editor_plugin.cpp editor/project_manager.cpp +msgid "Name" +msgstr "Naam" + +#: editor/editor_autoload_settings.cpp +msgid "Singleton" +msgstr "Singleton" + +#: editor/editor_autoload_settings.cpp +msgid "List:" +msgstr "Lijst:" + +#: editor/editor_data.cpp +msgid "Updating Scene" +msgstr "Scene aan het Updaten" + +#: editor/editor_data.cpp +msgid "Storing local changes.." +msgstr "Lokale wijziging aan het opslaan.." + +#: editor/editor_data.cpp +msgid "Updating scene.." +msgstr "Scene aan het updaten.." + +#: editor/editor_dir_dialog.cpp +msgid "Choose a Directory" +msgstr "Kies een Map" + +#: editor/editor_dir_dialog.cpp editor/editor_file_dialog.cpp +#: scene/gui/file_dialog.cpp +msgid "Create Folder" +msgstr "Map Maken" + +#: editor/editor_dir_dialog.cpp editor/editor_file_dialog.cpp +#: editor/editor_plugin_settings.cpp editor/plugins/theme_editor_plugin.cpp +#: editor/project_export.cpp scene/gui/file_dialog.cpp +msgid "Name:" +msgstr "Naam:" + +#: editor/editor_dir_dialog.cpp editor/editor_file_dialog.cpp +#: scene/gui/file_dialog.cpp +msgid "Could not create folder." +msgstr "Map kon niet gemaakt worden." + +#: editor/editor_dir_dialog.cpp +msgid "Choose" +msgstr "Kies" + +#: editor/editor_export.cpp +#, fuzzy +msgid "Storing File:" +msgstr "Opslag Bestand:" + +#: editor/editor_export.cpp +#, fuzzy +msgid "Packing" +msgstr "Inpakken" + +#: editor/editor_export.cpp platform/javascript/export/export.cpp +msgid "Template file not found:\n" +msgstr "" + +#: editor/editor_export.cpp +msgid "Added:" +msgstr "Toegevoegd:" + +#: editor/editor_export.cpp +msgid "Removed:" +msgstr "Verwijderd:" + +#: editor/editor_export.cpp +msgid "Error saving atlas:" +msgstr "Error bij het opslaan van atlas:" + +#: editor/editor_export.cpp +msgid "Could not save atlas subtexture:" +msgstr "Kon atlas subtexture niet opslaan:" + +#: editor/editor_export.cpp +msgid "Exporting for %s" +msgstr "Aan het exporteren voor %s" + +#: editor/editor_export.cpp +msgid "Setting Up.." +msgstr "Aan Het Opzetten.." + +#: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp +msgid "File Exists, Overwrite?" +msgstr "Bestand Bestaat, Overschrijven?" + +#: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp +msgid "All Recognized" +msgstr "Alles Herkend" + +#: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp +msgid "All Files (*)" +msgstr "Alle Bestanden (*)" + +#: editor/editor_file_dialog.cpp editor/editor_help.cpp editor/editor_node.cpp +#: editor/filesystem_dock.cpp editor/plugins/script_editor_plugin.cpp +#: editor/property_selector.cpp editor/quick_open.cpp scene/gui/file_dialog.cpp +msgid "Open" +msgstr "Openen" + +#: editor/editor_file_dialog.cpp editor/editor_node.cpp +#: editor/plugins/animation_player_editor_plugin.cpp +#: editor/plugins/script_editor_plugin.cpp scene/gui/file_dialog.cpp +msgid "Save" +msgstr "Opslaan" + +#: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp +msgid "Save a File" +msgstr "Sla een Bestand Op" + +#: editor/editor_file_dialog.cpp +msgid "Go Back" +msgstr "Ga Terug" + +#: editor/editor_file_dialog.cpp +msgid "Go Forward" +msgstr "Ga Verder" + +#: editor/editor_file_dialog.cpp +msgid "Go Up" +msgstr "Ga Omhoog" + +#: editor/editor_file_dialog.cpp +msgid "Refresh" +msgstr "Verversen" + +#: editor/editor_file_dialog.cpp +msgid "Toggle Hidden Files" +msgstr "Toggle Verborgen Bestanden" + +#: editor/editor_file_dialog.cpp +msgid "Toggle Favorite" +msgstr "Toggle Favoriet" + +#: editor/editor_file_dialog.cpp +msgid "Toggle Mode" +msgstr "Toggle Modus" + +#: editor/editor_file_dialog.cpp +msgid "Focus Path" +msgstr "Focus Pad" + +#: editor/editor_file_dialog.cpp +msgid "Move Favorite Up" +msgstr "Verplaats Favoriet Naar Boven" + +#: editor/editor_file_dialog.cpp +msgid "Move Favorite Down" +msgstr "Verplaats Favoriet Naar Beneden" + +#: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp +msgid "Directories & Files:" +msgstr "Mappen & Bestanden:" + +#: editor/editor_file_dialog.cpp +msgid "Preview:" +msgstr "Preview:" + +#: editor/editor_file_dialog.cpp editor/script_editor_debugger.cpp +#: scene/gui/file_dialog.cpp +msgid "File:" +msgstr "Bestand:" + +#: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp +msgid "Filter:" +msgstr "Filter:" + +#: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp +msgid "Must use a valid extension." +msgstr "Een geldige extensie moet gebruikt worden." + +#: editor/editor_file_system.cpp +#, fuzzy +msgid "ScanSources" +msgstr "Scan Bronnen" + +#: editor/editor_file_system.cpp +#, fuzzy +msgid "(Re)Importing Assets" +msgstr "Aan Het Herimporteren" + +#: editor/editor_help.cpp editor/plugins/script_editor_plugin.cpp +msgid "Search Help" +msgstr "Zoek Hulp" + +#: editor/editor_help.cpp +msgid "Class List:" +msgstr "Klasse Lijst:" + +#: editor/editor_help.cpp +msgid "Search Classes" +msgstr "Zoek Klasses" + +#: editor/editor_help.cpp editor/property_editor.cpp +msgid "Class:" +msgstr "Klasse:" + +#: editor/editor_help.cpp editor/scene_tree_editor.cpp +#: editor/script_create_dialog.cpp +msgid "Inherits:" +msgstr "Erft:" + +#: editor/editor_help.cpp +msgid "Inherited by:" +msgstr "Geërfd door:" + +#: editor/editor_help.cpp +msgid "Brief Description:" +msgstr "Korte Beschrijving:" + +#: editor/editor_help.cpp modules/visual_script/visual_script_editor.cpp +msgid "Members:" +msgstr "Leden:" + +#: editor/editor_help.cpp +msgid "Public Methods:" +msgstr "Publieke Methodes:" + +#: editor/editor_help.cpp +msgid "GUI Theme Items:" +msgstr "GUI Thema Items:" + +#: editor/editor_help.cpp modules/visual_script/visual_script_editor.cpp +msgid "Signals:" +msgstr "Signalen:" + +#: editor/editor_help.cpp +msgid "Constants:" +msgstr "Constanten:" + +#: editor/editor_help.cpp +msgid "Property Description:" +msgstr "Eigenschap Beschrijving:" + +#: editor/editor_help.cpp +msgid "Method Description:" +msgstr "Methode Beschrijving:" + +#: editor/editor_help.cpp +msgid "Search Text" +msgstr "Zoek Tekst" + +#: editor/editor_log.cpp +msgid " Output:" +msgstr " Uitvoer:" + +#: editor/editor_log.cpp editor/plugins/animation_tree_editor_plugin.cpp +#: editor/plugins/rich_text_editor_plugin.cpp editor/property_editor.cpp +#: editor/script_editor_debugger.cpp scene/gui/line_edit.cpp +#: scene/gui/text_edit.cpp +msgid "Clear" +msgstr "Leegmaken" + +#: editor/editor_node.cpp +msgid "Node From Scene" +msgstr "Node Uit Scene" + +#: editor/editor_node.cpp editor/plugins/animation_player_editor_plugin.cpp +#: editor/resources_dock.cpp +msgid "Error saving resource!" +msgstr "Error bij het opslaan van resource!" + +#: editor/editor_node.cpp editor/plugins/animation_player_editor_plugin.cpp +#: editor/resources_dock.cpp +msgid "Save Resource As.." +msgstr "Resource Opslaan Als.." + +#: editor/editor_node.cpp editor/export_template_manager.cpp +#: editor/plugins/canvas_item_editor_plugin.cpp editor/scene_tree_dock.cpp +#, fuzzy +msgid "I see.." +msgstr "Ik snap het.." + +#: editor/editor_node.cpp +msgid "Can't open file for writing:" +msgstr "Kan bestand niet openen om te schrijven:" + +#: editor/editor_node.cpp +msgid "Requested file format unknown:" +msgstr "Opgevraagde bestandsformaat onbekend:" + +#: editor/editor_node.cpp +msgid "Error while saving." +msgstr "Error bij het opslaan." + +#: editor/editor_node.cpp +msgid "Saving Scene" +msgstr "Scene Aan Het Opslaan" + +#: editor/editor_node.cpp +msgid "Analyzing" +msgstr "Aan Het Analyseren" + +#: editor/editor_node.cpp +msgid "Creating Thumbnail" +msgstr "Thumbnail Aan Het Maken" + +#: editor/editor_node.cpp +msgid "" +"Couldn't save scene. Likely dependencies (instances) couldn't be satisfied." +msgstr "" +"Kon scene niet opslaan. Waarschijnlijk konden afhankelijkheden (instanties) " +"niet voldaan worden." + +#: editor/editor_node.cpp +msgid "Failed to load resource." +msgstr "Mislukt om resource te laden." + +#: editor/editor_node.cpp +msgid "Can't load MeshLibrary for merging!" +msgstr "" + +#: editor/editor_node.cpp +msgid "Error saving MeshLibrary!" +msgstr "" + +#: editor/editor_node.cpp +msgid "Can't load TileSet for merging!" +msgstr "" + +#: editor/editor_node.cpp +msgid "Error saving TileSet!" +msgstr "" + +#: editor/editor_node.cpp +msgid "Error trying to save layout!" +msgstr "" + +#: editor/editor_node.cpp +msgid "Default editor layout overridden." +msgstr "" + +#: editor/editor_node.cpp +msgid "Layout name not found!" +msgstr "" + +#: editor/editor_node.cpp +msgid "Restored default layout to base settings." +msgstr "" + +#: editor/editor_node.cpp +msgid "Copy Params" +msgstr "" + +#: editor/editor_node.cpp +msgid "Paste Params" +msgstr "" + +#: editor/editor_node.cpp editor/plugins/resource_preloader_editor_plugin.cpp +msgid "Paste Resource" +msgstr "" + +#: editor/editor_node.cpp +msgid "Copy Resource" +msgstr "" + +#: editor/editor_node.cpp +msgid "Make Built-In" +msgstr "" + +#: editor/editor_node.cpp +msgid "Make Sub-Resources Unique" +msgstr "" + +#: editor/editor_node.cpp +msgid "Open in Help" +msgstr "" + +#: editor/editor_node.cpp +msgid "There is no defined scene to run." +msgstr "" + +#: editor/editor_node.cpp +msgid "" +"No main scene has ever been defined, select one?\n" +"You can change it later in later in \"Project Settings\" under the " +"'application' category." +msgstr "" + +#: editor/editor_node.cpp +msgid "" +"Selected scene '%s' does not exist, select a valid one?\n" +"You can change it later in \"Project Settings\" under the 'application' " +"category." +msgstr "" + +#: editor/editor_node.cpp +msgid "" +"Selected scene '%s' is not a scene file, select a valid one?\n" +"You can change it later in \"Project Settings\" under the 'application' " +"category." +msgstr "" + +#: editor/editor_node.cpp +msgid "Current scene was never saved, please save it prior to running." +msgstr "" + +#: editor/editor_node.cpp +msgid "Could not start subprocess!" +msgstr "" + +#: editor/editor_node.cpp +msgid "Open Scene" +msgstr "" + +#: editor/editor_node.cpp +msgid "Open Base Scene" +msgstr "" + +#: editor/editor_node.cpp +msgid "Quick Open Scene.." +msgstr "" + +#: editor/editor_node.cpp +msgid "Quick Open Script.." +msgstr "" + +#: editor/editor_node.cpp +msgid "Yes" +msgstr "" + +#: editor/editor_node.cpp +msgid "Close scene? (Unsaved changes will be lost)" +msgstr "" + +#: editor/editor_node.cpp +msgid "Save Scene As.." +msgstr "" + +#: editor/editor_node.cpp +msgid "This scene has never been saved. Save before running?" +msgstr "" + +#: editor/editor_node.cpp +msgid "Export Mesh Library" +msgstr "" + +#: editor/editor_node.cpp +msgid "Export Tile Set" +msgstr "" + +#: editor/editor_node.cpp +msgid "Quit" +msgstr "" + +#: editor/editor_node.cpp +msgid "Exit the editor?" +msgstr "" + +#: editor/editor_node.cpp +msgid "Current scene not saved. Open anyway?" +msgstr "" + +#: editor/editor_node.cpp +msgid "Can't reload a scene that was never saved." +msgstr "" + +#: editor/editor_node.cpp +msgid "Revert" +msgstr "" + +#: editor/editor_node.cpp +msgid "This action cannot be undone. Revert anyway?" +msgstr "" + +#: editor/editor_node.cpp +msgid "Quick Run Scene.." +msgstr "" + +#: editor/editor_node.cpp +msgid "" +"Open Project Manager? \n" +"(Unsaved changes will be lost)" +msgstr "" + +#: editor/editor_node.cpp +msgid "Pick a Main Scene" +msgstr "" + +#: editor/editor_node.cpp +msgid "" +"Scene '%s' was automatically imported, so it can't be modified.\n" +"To make changes to it, a new inherited scene can be created." +msgstr "" + +#: editor/editor_node.cpp editor/plugins/canvas_item_editor_plugin.cpp +#: editor/scene_tree_dock.cpp editor/script_create_dialog.cpp +msgid "Ugh" +msgstr "" + +#: editor/editor_node.cpp +msgid "" +"Error loading scene, it must be inside the project path. Use 'Import' to " +"open the scene, then save it inside the project path." +msgstr "" + +#: editor/editor_node.cpp +msgid "Error loading scene." +msgstr "" + +#: editor/editor_node.cpp +msgid "Scene '%s' has broken dependencies:" +msgstr "" + +#: editor/editor_node.cpp +msgid "Save Layout" +msgstr "" + +#: editor/editor_node.cpp +msgid "Delete Layout" +msgstr "" + +#: editor/editor_node.cpp +msgid "Switch Scene Tab" +msgstr "" + +#: editor/editor_node.cpp +msgid "%d more file(s)" +msgstr "" + +#: editor/editor_node.cpp +msgid "%d more file(s) or folder(s)" +msgstr "" + +#: editor/editor_node.cpp editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Scene" +msgstr "" + +#: editor/editor_node.cpp +msgid "Go to previously opened scene." +msgstr "" + +#: editor/editor_node.cpp +msgid "Next tab" +msgstr "" + +#: editor/editor_node.cpp +msgid "Previous tab" +msgstr "" + +#: editor/editor_node.cpp +msgid "Filter Files.." +msgstr "" + +#: editor/editor_node.cpp +msgid "Operations with scene files." +msgstr "" + +#: editor/editor_node.cpp +msgid "New Scene" +msgstr "" + +#: editor/editor_node.cpp +msgid "New Inherited Scene.." +msgstr "" + +#: editor/editor_node.cpp +msgid "Open Scene.." +msgstr "" + +#: editor/editor_node.cpp +msgid "Save Scene" +msgstr "" + +#: editor/editor_node.cpp +msgid "Save all Scenes" +msgstr "" + +#: editor/editor_node.cpp +msgid "Close Scene" +msgstr "" + +#: editor/editor_node.cpp +msgid "Close Goto Prev. Scene" +msgstr "" + +#: editor/editor_node.cpp +msgid "Open Recent" +msgstr "" + +#: editor/editor_node.cpp +msgid "Convert To.." +msgstr "" + +#: editor/editor_node.cpp +msgid "MeshLibrary.." +msgstr "" + +#: editor/editor_node.cpp +msgid "TileSet.." +msgstr "" + +#: editor/editor_node.cpp editor/plugins/script_text_editor.cpp +#: editor/plugins/shader_editor_plugin.cpp scene/gui/line_edit.cpp +#: scene/gui/text_edit.cpp +msgid "Undo" +msgstr "Ongedaan Maken" + +#: editor/editor_node.cpp editor/plugins/script_text_editor.cpp +#: editor/plugins/shader_editor_plugin.cpp +msgid "Redo" +msgstr "" + +#: editor/editor_node.cpp +msgid "Run Script" +msgstr "" + +#: editor/editor_node.cpp +msgid "Project Settings" +msgstr "" + +#: editor/editor_node.cpp +msgid "Revert Scene" +msgstr "" + +#: editor/editor_node.cpp +msgid "Quit to Project List" +msgstr "" + +#: editor/editor_node.cpp +msgid "Distraction Free Mode" +msgstr "" + +#: editor/editor_node.cpp +msgid "Import assets to the project." +msgstr "" + +#: editor/editor_node.cpp editor/io_plugins/editor_bitmask_import_plugin.cpp +#: editor/io_plugins/editor_font_import_plugin.cpp +#: editor/io_plugins/editor_mesh_import_plugin.cpp +#: editor/io_plugins/editor_sample_import_plugin.cpp +#: editor/io_plugins/editor_scene_import_plugin.cpp +#: editor/io_plugins/editor_texture_import_plugin.cpp +#: editor/io_plugins/editor_translation_import_plugin.cpp +#: editor/project_manager.cpp +msgid "Import" +msgstr "" + +#: editor/editor_node.cpp +msgid "Miscellaneous project or scene-wide tools." +msgstr "" + +#: editor/editor_node.cpp +msgid "Tools" +msgstr "" + +#: editor/editor_node.cpp +msgid "Export the project to many platforms." +msgstr "" + +#: editor/editor_node.cpp editor/project_export.cpp +msgid "Export" +msgstr "" + +#: editor/editor_node.cpp +msgid "Play the project." +msgstr "" + +#: editor/editor_node.cpp editor/plugins/sample_library_editor_plugin.cpp +msgid "Play" +msgstr "" + +#: editor/editor_node.cpp +msgid "Pause the scene" +msgstr "" + +#: editor/editor_node.cpp +msgid "Pause Scene" +msgstr "" + +#: editor/editor_node.cpp +msgid "Stop the scene." +msgstr "" + +#: editor/editor_node.cpp editor/plugins/sample_library_editor_plugin.cpp +msgid "Stop" +msgstr "" + +#: editor/editor_node.cpp +msgid "Play the edited scene." +msgstr "" + +#: editor/editor_node.cpp +msgid "Play Scene" +msgstr "" + +#: editor/editor_node.cpp +msgid "Play custom scene" +msgstr "" + +#: editor/editor_node.cpp +msgid "Play Custom Scene" +msgstr "" + +#: editor/editor_node.cpp +msgid "Debug options" +msgstr "" + +#: editor/editor_node.cpp +msgid "Deploy with Remote Debug" +msgstr "" + +#: editor/editor_node.cpp +msgid "" +"When exporting or deploying, the resulting executable will attempt to " +"connect to the IP of this computer in order to be debugged." +msgstr "" + +#: editor/editor_node.cpp +msgid "Small Deploy with Network FS" +msgstr "" + +#: editor/editor_node.cpp +msgid "" +"When this option is enabled, export or deploy will produce a minimal " +"executable.\n" +"The filesystem will be provided from the project by the editor over the " +"network.\n" +"On Android, deploy will use the USB cable for faster performance. This " +"option speeds up testing for games with a large footprint." +msgstr "" + +#: editor/editor_node.cpp +msgid "Visible Collision Shapes" +msgstr "" + +#: editor/editor_node.cpp +msgid "" +"Collision shapes and raycast nodes (for 2D and 3D) will be visible on the " +"running game if this option is turned on." +msgstr "" + +#: editor/editor_node.cpp +msgid "Visible Navigation" +msgstr "" + +#: editor/editor_node.cpp +msgid "" +"Navigation meshes and polygons will be visible on the running game if this " +"option is turned on." +msgstr "" + +#: editor/editor_node.cpp +msgid "Sync Scene Changes" +msgstr "" + +#: editor/editor_node.cpp +msgid "" +"When this option is turned on, any changes made to the scene in the editor " +"will be replicated in the running game.\n" +"When used remotely on a device, this is more efficient with network " +"filesystem." +msgstr "" + +#: editor/editor_node.cpp +msgid "Sync Script Changes" +msgstr "" + +#: editor/editor_node.cpp +msgid "" +"When this option is turned on, any script that is saved will be reloaded on " +"the running game.\n" +"When used remotely on a device, this is more efficient with network " +"filesystem." +msgstr "" + +#: editor/editor_node.cpp editor/plugins/spatial_editor_plugin.cpp +msgid "Settings" +msgstr "" + +#: editor/editor_node.cpp editor/settings_config_dialog.cpp +msgid "Editor Settings" +msgstr "" + +#: editor/editor_node.cpp +msgid "Editor Layout" +msgstr "" + +#: editor/editor_node.cpp +msgid "Toggle Fullscreen" +msgstr "" + +#: editor/editor_node.cpp editor/project_export.cpp +msgid "Manage Export Templates" +msgstr "" + +#: editor/editor_node.cpp +msgid "About" +msgstr "" + +#: editor/editor_node.cpp +msgid "Alerts when an external resource has changed." +msgstr "" + +#: editor/editor_node.cpp +msgid "Spins when the editor window repaints!" +msgstr "" + +#: editor/editor_node.cpp +msgid "Update Always" +msgstr "" + +#: editor/editor_node.cpp +msgid "Update Changes" +msgstr "" + +#: editor/editor_node.cpp +msgid "Disable Update Spinner" +msgstr "" + +#: editor/editor_node.cpp +msgid "Inspector" +msgstr "" + +#: editor/editor_node.cpp +msgid "Create a new resource in memory and edit it." +msgstr "" + +#: editor/editor_node.cpp +msgid "Load an existing resource from disk and edit it." +msgstr "" + +#: editor/editor_node.cpp +msgid "Save the currently edited resource." +msgstr "" + +#: editor/editor_node.cpp editor/plugins/script_editor_plugin.cpp +msgid "Save As.." +msgstr "" + +#: editor/editor_node.cpp +msgid "Go to the previous edited object in history." +msgstr "" + +#: editor/editor_node.cpp +msgid "Go to the next edited object in history." +msgstr "" + +#: editor/editor_node.cpp +msgid "History of recently edited objects." +msgstr "" + +#: editor/editor_node.cpp +msgid "Object properties." +msgstr "" + +#: editor/editor_node.cpp +msgid "FileSystem" +msgstr "" + +#: editor/editor_node.cpp editor/node_dock.cpp +msgid "Node" +msgstr "" + +#: editor/editor_node.cpp +msgid "Output" +msgstr "" + +#: editor/editor_node.cpp editor/editor_reimport_dialog.cpp +msgid "Re-Import" +msgstr "" + +#: editor/editor_node.cpp editor/editor_plugin_settings.cpp +msgid "Update" +msgstr "" + +#: editor/editor_node.cpp +msgid "Thanks from the Godot community!" +msgstr "" + +#: editor/editor_node.cpp +msgid "Thanks!" +msgstr "" + +#: editor/editor_node.cpp +msgid "Import Templates From ZIP File" +msgstr "" + +#: editor/editor_node.cpp +msgid "Export Project" +msgstr "" + +#: editor/editor_node.cpp +msgid "Export Library" +msgstr "" + +#: editor/editor_node.cpp +msgid "Merge With Existing" +msgstr "" + +#: editor/editor_node.cpp +msgid "Password:" +msgstr "" + +#: editor/editor_node.cpp +msgid "Open & Run a Script" +msgstr "" + +#: editor/editor_node.cpp +msgid "Load Errors" +msgstr "" + +#: editor/editor_plugin_settings.cpp +msgid "Installed Plugins:" +msgstr "" + +#: editor/editor_plugin_settings.cpp +msgid "Version:" +msgstr "" + +#: editor/editor_plugin_settings.cpp +msgid "Author:" +msgstr "" + +#: editor/editor_plugin_settings.cpp +msgid "Status:" +msgstr "" + +#: editor/editor_profiler.cpp +msgid "Stop Profiling" +msgstr "" + +#: editor/editor_profiler.cpp +msgid "Start Profiling" +msgstr "" + +#: editor/editor_profiler.cpp +msgid "Measure:" +msgstr "" + +#: editor/editor_profiler.cpp +msgid "Frame Time (sec)" +msgstr "" + +#: editor/editor_profiler.cpp +msgid "Average Time (sec)" +msgstr "" + +#: editor/editor_profiler.cpp +msgid "Frame %" +msgstr "" + +#: editor/editor_profiler.cpp +msgid "Fixed Frame %" +msgstr "" + +#: editor/editor_profiler.cpp editor/script_editor_debugger.cpp +msgid "Time:" +msgstr "" + +#: editor/editor_profiler.cpp +msgid "Inclusive" +msgstr "" + +#: editor/editor_profiler.cpp +msgid "Self" +msgstr "" + +#: editor/editor_profiler.cpp +msgid "Frame #:" +msgstr "" + +#: editor/editor_reimport_dialog.cpp +msgid "Please wait for scan to complete." +msgstr "" + +#: editor/editor_reimport_dialog.cpp +msgid "Current scene must be saved to re-import." +msgstr "" + +#: editor/editor_reimport_dialog.cpp +msgid "Save & Re-Import" +msgstr "" + +#: editor/editor_reimport_dialog.cpp +msgid "Re-Importing" +msgstr "Aan Het Herimporteren" + +#: editor/editor_reimport_dialog.cpp +msgid "Re-Import Changed Resources" +msgstr "" + +#: editor/editor_run_script.cpp +msgid "Write your logic in the _run() method." +msgstr "" + +#: editor/editor_run_script.cpp +msgid "There is an edited scene already." +msgstr "" + +#: editor/editor_run_script.cpp +msgid "Couldn't instance script:" +msgstr "" + +#: editor/editor_run_script.cpp +msgid "Did you forget the 'tool' keyword?" +msgstr "" + +#: editor/editor_run_script.cpp +msgid "Couldn't run script:" +msgstr "" + +#: editor/editor_run_script.cpp +msgid "Did you forget the '_run' method?" +msgstr "" + +#: editor/editor_settings.cpp +msgid "Default (Same as Editor)" +msgstr "" + +#: editor/editor_sub_scene.cpp +msgid "Select Node(s) to Import" +msgstr "" + +#: editor/editor_sub_scene.cpp +msgid "Scene Path:" +msgstr "" + +#: editor/editor_sub_scene.cpp +msgid "Import From Node:" +msgstr "" + +#: editor/export_template_manager.cpp +msgid "Re-Download" +msgstr "" + +#: editor/export_template_manager.cpp +msgid "Uninstall" +msgstr "" + +#: editor/export_template_manager.cpp +msgid "(Installed)" +msgstr "" + +#: editor/export_template_manager.cpp +msgid "Download" +msgstr "" + +#: editor/export_template_manager.cpp +msgid "(Missing)" +msgstr "" + +#: editor/export_template_manager.cpp +msgid "(Current)" +msgstr "" + +#: editor/export_template_manager.cpp +msgid "Remove template version '%s'?" +msgstr "" + +#: editor/export_template_manager.cpp +msgid "Can't open export templates zip." +msgstr "" + +#: editor/export_template_manager.cpp +msgid "Invalid version.txt format inside templates." +msgstr "" + +#: editor/export_template_manager.cpp +msgid "" +"Invalid version.txt format inside templates. Revision is not a valid " +"identifier." +msgstr "" + +#: editor/export_template_manager.cpp +msgid "No version.txt found inside templates." +msgstr "" + +#: editor/export_template_manager.cpp +#, fuzzy +msgid "Error creating path for templates:\n" +msgstr "Error bij het opslaan van atlas:" + +#: editor/export_template_manager.cpp +msgid "Extracting Export Templates" +msgstr "" + +#: editor/export_template_manager.cpp +msgid "Importing:" +msgstr "Aan Het Importeren:" + +#: editor/export_template_manager.cpp +msgid "Loading Export Templates" +msgstr "" + +#: editor/export_template_manager.cpp +msgid "Current Version:" +msgstr "" + +#: editor/export_template_manager.cpp +msgid "Installed Versions:" +msgstr "" + +#: editor/export_template_manager.cpp +msgid "Install From File" +msgstr "" + +#: editor/export_template_manager.cpp +#, fuzzy +msgid "Remove Template" +msgstr "Verwijder Selectie" + +#: editor/export_template_manager.cpp +#, fuzzy +msgid "Select template file" +msgstr "Verwijder geselecteerde bestanden?" + +#: editor/export_template_manager.cpp +msgid "Export Template Manager" +msgstr "" + +#: editor/file_type_cache.cpp +msgid "Can't open file_type_cache.cch for writing, not saving file type cache!" +msgstr "" + +#: editor/filesystem_dock.cpp +msgid "Cannot navigate to '" +msgstr "" + +#: editor/filesystem_dock.cpp +msgid "Same source and destination files, doing nothing." +msgstr "" + +#: editor/filesystem_dock.cpp +msgid "Same source and destination paths, doing nothing." +msgstr "" + +#: editor/filesystem_dock.cpp +msgid "Can't move directories to within themselves." +msgstr "" + +#: editor/filesystem_dock.cpp +msgid "Can't operate on '..'" +msgstr "" + +#: editor/filesystem_dock.cpp +msgid "Pick New Name and Location For:" +msgstr "" + +#: editor/filesystem_dock.cpp +msgid "No files selected!" +msgstr "" + +#: editor/filesystem_dock.cpp +msgid "Expand all" +msgstr "" + +#: editor/filesystem_dock.cpp +msgid "Collapse all" +msgstr "" + +#: editor/filesystem_dock.cpp +msgid "Instance" +msgstr "" + +#: editor/filesystem_dock.cpp +msgid "Edit Dependencies.." +msgstr "" + +#: editor/filesystem_dock.cpp +msgid "View Owners.." +msgstr "" + +#: editor/filesystem_dock.cpp +msgid "Copy Path" +msgstr "" + +#: editor/filesystem_dock.cpp +msgid "Rename or Move.." +msgstr "" + +#: editor/filesystem_dock.cpp +msgid "Move To.." +msgstr "" + +#: editor/filesystem_dock.cpp +msgid "Info" +msgstr "" + +#: editor/filesystem_dock.cpp +msgid "Show In File Manager" +msgstr "" + +#: editor/filesystem_dock.cpp +msgid "Re-Import.." +msgstr "" + +#: editor/filesystem_dock.cpp +msgid "Previous Directory" +msgstr "" + +#: editor/filesystem_dock.cpp +msgid "Next Directory" +msgstr "" + +#: editor/filesystem_dock.cpp +msgid "Re-Scan Filesystem" +msgstr "" + +#: editor/filesystem_dock.cpp +msgid "Toggle folder status as Favorite" +msgstr "" + +#: editor/filesystem_dock.cpp +msgid "Instance the selected scene(s) as child of the selected node." +msgstr "" + +#: editor/filesystem_dock.cpp +msgid "Move" +msgstr "" + +#: editor/groups_editor.cpp +msgid "Add to Group" +msgstr "" + +#: editor/groups_editor.cpp +msgid "Remove from Group" +msgstr "" + +#: editor/import/resource_importer_obj.cpp +#: editor/io_plugins/editor_mesh_import_plugin.cpp +msgid "Surface %d" +msgstr "" + +#: editor/import/resource_importer_scene.cpp +#: editor/io_plugins/editor_scene_import_plugin.cpp +#: editor/plugins/cube_grid_theme_editor_plugin.cpp +msgid "Import Scene" +msgstr "" + +#: editor/import/resource_importer_scene.cpp +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Importing Scene.." +msgstr "" + +#: editor/import/resource_importer_scene.cpp +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Running Custom Script.." +msgstr "" + +#: editor/import/resource_importer_scene.cpp +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Couldn't load post-import script:" +msgstr "" + +#: editor/import/resource_importer_scene.cpp +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Invalid/broken script for post-import (check console):" +msgstr "" + +#: editor/import/resource_importer_scene.cpp +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Error running post-import script:" +msgstr "" + +#: editor/import/resource_importer_scene.cpp +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Saving.." +msgstr "" + +#: editor/import_dock.cpp +#, fuzzy +msgid " Files" +msgstr "Bestand:" + +#: editor/import_dock.cpp +#, fuzzy +msgid "Import As:" +msgstr "Aan Het Importeren:" + +#: editor/import_dock.cpp editor/property_editor.cpp +msgid "Preset.." +msgstr "" + +#: editor/import_dock.cpp +#, fuzzy +msgid "Reimport" +msgstr "Aan Het Herimporteren" + +#: editor/io_plugins/editor_bitmask_import_plugin.cpp +msgid "No bit masks to import!" +msgstr "" + +#: editor/io_plugins/editor_bitmask_import_plugin.cpp +#: editor/io_plugins/editor_sample_import_plugin.cpp +#: editor/io_plugins/editor_scene_import_plugin.cpp +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Target path is empty." +msgstr "" + +#: editor/io_plugins/editor_bitmask_import_plugin.cpp +#: editor/io_plugins/editor_sample_import_plugin.cpp +#: editor/io_plugins/editor_scene_import_plugin.cpp +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Target path must be a complete resource path." +msgstr "" + +#: editor/io_plugins/editor_bitmask_import_plugin.cpp +#: editor/io_plugins/editor_sample_import_plugin.cpp +#: editor/io_plugins/editor_scene_import_plugin.cpp +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Target path must exist." +msgstr "" + +#: editor/io_plugins/editor_bitmask_import_plugin.cpp +#: editor/io_plugins/editor_mesh_import_plugin.cpp +#: editor/io_plugins/editor_sample_import_plugin.cpp +msgid "Save path is empty!" +msgstr "" + +#: editor/io_plugins/editor_bitmask_import_plugin.cpp +msgid "Import BitMasks" +msgstr "" + +#: editor/io_plugins/editor_bitmask_import_plugin.cpp +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Source Texture(s):" +msgstr "" + +#: editor/io_plugins/editor_bitmask_import_plugin.cpp +#: editor/io_plugins/editor_mesh_import_plugin.cpp +#: editor/io_plugins/editor_sample_import_plugin.cpp +#: editor/io_plugins/editor_scene_import_plugin.cpp +#: editor/io_plugins/editor_texture_import_plugin.cpp +#: editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Target Path:" +msgstr "" + +#: editor/io_plugins/editor_bitmask_import_plugin.cpp +#: editor/io_plugins/editor_font_import_plugin.cpp +#: editor/io_plugins/editor_sample_import_plugin.cpp +#: editor/io_plugins/editor_scene_import_plugin.cpp +#: editor/io_plugins/editor_texture_import_plugin.cpp +#: editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Accept" +msgstr "" + +#: editor/io_plugins/editor_bitmask_import_plugin.cpp +msgid "Bit Mask" +msgstr "" + +#: editor/io_plugins/editor_font_import_plugin.cpp +msgid "No source font file!" +msgstr "" + +#: editor/io_plugins/editor_font_import_plugin.cpp +msgid "No target font resource!" +msgstr "" + +#: editor/io_plugins/editor_font_import_plugin.cpp +msgid "" +"Invalid file extension.\n" +"Please use .fnt." +msgstr "" + +#: editor/io_plugins/editor_font_import_plugin.cpp +msgid "Can't load/process source font." +msgstr "" + +#: editor/io_plugins/editor_font_import_plugin.cpp +msgid "Couldn't save font." +msgstr "" + +#: editor/io_plugins/editor_font_import_plugin.cpp +msgid "Source Font:" +msgstr "" + +#: editor/io_plugins/editor_font_import_plugin.cpp +msgid "Source Font Size:" +msgstr "" + +#: editor/io_plugins/editor_font_import_plugin.cpp +msgid "Dest Resource:" +msgstr "" + +#: editor/io_plugins/editor_font_import_plugin.cpp +msgid "The quick brown fox jumps over the lazy dog." +msgstr "" + +#: editor/io_plugins/editor_font_import_plugin.cpp +msgid "Test:" +msgstr "" + +#: editor/io_plugins/editor_font_import_plugin.cpp +#: editor/io_plugins/editor_mesh_import_plugin.cpp +#: editor/io_plugins/editor_sample_import_plugin.cpp +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Options:" +msgstr "" + +#: editor/io_plugins/editor_font_import_plugin.cpp +msgid "Font Import" +msgstr "" + +#: editor/io_plugins/editor_font_import_plugin.cpp +msgid "" +"This file is already a Godot font file, please supply a BMFont type file " +"instead." +msgstr "" + +#: editor/io_plugins/editor_font_import_plugin.cpp +msgid "Failed opening as BMFont file." +msgstr "" + +#: editor/io_plugins/editor_font_import_plugin.cpp +#: scene/resources/dynamic_font.cpp +msgid "Error initializing FreeType." +msgstr "Error bij het initialiseren van FreeType." + +#: editor/io_plugins/editor_font_import_plugin.cpp +#: scene/resources/dynamic_font.cpp +msgid "Unknown font format." +msgstr "Onbekende lettertype formaat." + +#: editor/io_plugins/editor_font_import_plugin.cpp +#: scene/resources/dynamic_font.cpp +msgid "Error loading font." +msgstr "Error bij het laden van lettertype." + +#: editor/io_plugins/editor_font_import_plugin.cpp +#: scene/resources/dynamic_font.cpp +msgid "Invalid font size." +msgstr "Ongeldige lettertype grootte." + +#: editor/io_plugins/editor_font_import_plugin.cpp +msgid "Invalid font custom source." +msgstr "" + +#: editor/io_plugins/editor_font_import_plugin.cpp +#: editor/plugins/theme_editor_plugin.cpp +msgid "Font" +msgstr "" + +#: editor/io_plugins/editor_mesh_import_plugin.cpp +msgid "No meshes to import!" +msgstr "" + +#: editor/io_plugins/editor_mesh_import_plugin.cpp +msgid "Single Mesh Import" +msgstr "" + +#: editor/io_plugins/editor_mesh_import_plugin.cpp +msgid "Source Mesh(es):" +msgstr "" + +#: editor/io_plugins/editor_mesh_import_plugin.cpp +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Mesh" +msgstr "" + +#: editor/io_plugins/editor_sample_import_plugin.cpp +msgid "No samples to import!" +msgstr "" + +#: editor/io_plugins/editor_sample_import_plugin.cpp +msgid "Import Audio Samples" +msgstr "" + +#: editor/io_plugins/editor_sample_import_plugin.cpp +msgid "Source Sample(s):" +msgstr "" + +#: editor/io_plugins/editor_sample_import_plugin.cpp +msgid "Audio Sample" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "New Clip" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Animation Options" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Flags" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Bake FPS:" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Optimizer" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Max Linear Error" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Max Angular Error" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Max Angle" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Clips" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Start(s)" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "End(s)" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Loop" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Filters" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Source path is empty." +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Couldn't load post-import script." +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Invalid/broken script for post-import." +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Error importing scene." +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Import 3D Scene" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Source Scene:" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Same as Target Scene" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Shared" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Target Texture Folder:" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Post-Process Script:" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Custom Root Node Type:" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Auto" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Root Node Name:" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "The Following Files are Missing:" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Import Anyway" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp scene/gui/dialogs.cpp +msgid "Cancel" +msgstr "Annuleren" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Import & Open" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Edited scene has not been saved, open imported scene anyway?" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Import Image:" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Can't import a file over itself:" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Couldn't localize path: %s (already local)" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "3D Scene Animation" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Uncompressed" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Compress Lossless (PNG)" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Compress Lossy (WebP)" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Compress (VRAM)" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Texture Format" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Texture Compression Quality (WebP):" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Texture Options" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Please specify some files!" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "At least one file needed for Atlas." +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Error importing:" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Only one file is required for large texture." +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Max Texture Size:" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Import Textures for Atlas (2D)" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Cell Size:" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Large Texture" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Import Large Textures (2D)" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Source Texture" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Base Atlas Texture" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Source Texture(s)" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Import Textures for 2D" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Import Textures for 3D" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Import Textures" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "2D Texture" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "3D Texture" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Atlas Texture" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "" +"NOTICE: Importing 2D textures is not mandatory. Just copy png/jpg files to " +"the project." +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Crop empty space." +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Texture" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Import Large Texture" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Load Source Image" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Slicing" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Inserting" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Saving" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Couldn't save large texture:" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Build Atlas For:" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Loading Image:" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Couldn't load image:" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Converting Images" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Cropping Images" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Blitting Images" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Couldn't save atlas image:" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Couldn't save converted texture:" +msgstr "" + +#: editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Invalid source!" +msgstr "" + +#: editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Invalid translation source!" +msgstr "" + +#: editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Column" +msgstr "" + +#: editor/io_plugins/editor_translation_import_plugin.cpp +#: editor/script_create_dialog.cpp +msgid "Language" +msgstr "" + +#: editor/io_plugins/editor_translation_import_plugin.cpp +msgid "No items to import!" +msgstr "" + +#: editor/io_plugins/editor_translation_import_plugin.cpp +msgid "No target path!" +msgstr "" + +#: editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Import Translations" +msgstr "" + +#: editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Couldn't import!" +msgstr "" + +#: editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Import Translation" +msgstr "" + +#: editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Source CSV:" +msgstr "" + +#: editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Ignore First Row" +msgstr "" + +#: editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Compress" +msgstr "" + +#: editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Add to Project (godot.cfg)" +msgstr "" + +#: editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Import Languages:" +msgstr "" + +#: editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Translation" +msgstr "" + +#: editor/multi_node_edit.cpp +msgid "MultiNode Set" +msgstr "" + +#: editor/node_dock.cpp +msgid "Groups" +msgstr "" + +#: editor/node_dock.cpp +msgid "Select a Node to edit Signals and Groups." +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Toggle Autoplay" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "New Animation Name:" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "New Anim" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Change Animation Name:" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +#, fuzzy +msgid "Delete Animation?" +msgstr "Optimaliseer Animatie" + +#: editor/plugins/animation_player_editor_plugin.cpp +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Remove Animation" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "ERROR: Invalid animation name!" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "ERROR: Animation name already exists!" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Rename Animation" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Add Animation" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Blend Next Changed" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Change Blend Time" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Load Animation" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Duplicate Animation" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "ERROR: No animation to copy!" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "ERROR: No animation resource on clipboard!" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Pasted Animation" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Paste Animation" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "ERROR: No animation to edit!" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Play selected animation backwards from current pos. (A)" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Play selected animation backwards from end. (Shift+A)" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Stop animation playback. (S)" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Play selected animation from start. (Shift+D)" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Play selected animation from current pos. (D)" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Animation position (in seconds)." +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Scale animation playback globally for the node." +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Create new animation in player." +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Load animation from disk." +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Load an animation from disk." +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Save the current animation" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Display list of animations in player." +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Autoplay on Load" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Edit Target Blend Times" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Animation Tools" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Copy Animation" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Create New Animation" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Animation Name:" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +#: editor/plugins/resource_preloader_editor_plugin.cpp +#: editor/plugins/sample_library_editor_plugin.cpp +#: editor/plugins/sprite_frames_editor_plugin.cpp editor/property_editor.cpp +#: editor/script_create_dialog.cpp +msgid "Error!" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Blend Times:" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Next (Auto Queue):" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Cross-Animation Blend Times" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Animation" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "New name:" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Scale:" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Fade In (s):" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Fade Out (s):" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Blend" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Mix" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Auto Restart:" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Restart (s):" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Random Restart (s):" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Start!" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Amount:" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Blend:" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Blend 0:" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Blend 1:" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "X-Fade Time (s):" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Current:" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Add Input" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Clear Auto-Advance" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Set Auto-Advance" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Delete Input" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Rename" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Animation tree is valid." +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Animation tree is invalid." +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Animation Node" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "OneShot Node" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Mix Node" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Blend2 Node" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Blend3 Node" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Blend4 Node" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "TimeScale Node" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "TimeSeek Node" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Transition Node" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Import Animations.." +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Edit Node Filters" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Filters.." +msgstr "" + +#: editor/plugins/baked_light_baker.cpp +msgid "Parsing %d Triangles:" +msgstr "" + +#: editor/plugins/baked_light_baker.cpp +msgid "Triangle #" +msgstr "" + +#: editor/plugins/baked_light_baker.cpp +msgid "Light Baker Setup:" +msgstr "" + +#: editor/plugins/baked_light_baker.cpp +msgid "Parsing Geometry" +msgstr "" + +#: editor/plugins/baked_light_baker.cpp +msgid "Fixing Lights" +msgstr "" + +#: editor/plugins/baked_light_baker.cpp +msgid "Making BVH" +msgstr "" + +#: editor/plugins/baked_light_baker.cpp +msgid "Creating Light Octree" +msgstr "" + +#: editor/plugins/baked_light_baker.cpp +msgid "Creating Octree Texture" +msgstr "" + +#: editor/plugins/baked_light_baker.cpp +msgid "Transfer to Lightmaps:" +msgstr "" + +#: editor/plugins/baked_light_baker.cpp +msgid "Allocating Texture #" +msgstr "" + +#: editor/plugins/baked_light_baker.cpp +msgid "Baking Triangle #" +msgstr "" + +#: editor/plugins/baked_light_baker.cpp +msgid "Post-Processing Texture #" +msgstr "" + +#: editor/plugins/baked_light_editor_plugin.cpp +msgid "Bake!" +msgstr "" + +#: editor/plugins/baked_light_editor_plugin.cpp +msgid "Reset the lightmap octree baking process (start over)." +msgstr "" + +#: editor/plugins/camera_editor_plugin.cpp +#: editor/plugins/sample_library_editor_plugin.cpp +msgid "Preview" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Configure Snap" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Grid Offset:" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Grid Step:" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Rotation Offset:" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Rotation Step:" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Move Pivot" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Move Action" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Edit IK Chain" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Edit CanvasItem" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Change Anchors" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Zoom (%):" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Paste Pose" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Select Mode" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Drag: Rotate" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Alt+Drag: Move" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Press 'v' to Change Pivot, 'Shift+v' to Drag Pivot (while moving)." +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Alt+RMB: Depth list selection" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Move Mode" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Rotate Mode" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +#: editor/plugins/spatial_editor_plugin.cpp +msgid "" +"Show a list of all objects at the position clicked\n" +"(same as Alt+RMB in select mode)." +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Click to change object's rotation pivot." +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Pan Mode" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Lock the selected object in place (can't be moved)." +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Unlock the selected object (can be moved)." +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Makes sure the object's children are not selectable." +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Restores the object's children's ability to be selected." +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +#: editor/plugins/polygon_2d_editor_plugin.cpp +#: editor/plugins/script_text_editor.cpp +#: editor/plugins/shader_editor_plugin.cpp editor/project_manager.cpp +#: modules/visual_script/visual_script_editor.cpp +msgid "Edit" +msgstr "Bewerken" + +#: editor/plugins/canvas_item_editor_plugin.cpp +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Use Snap" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Show Grid" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Use Rotation Snap" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Snap Relative" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Configure Snap.." +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Use Pixel Snap" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Expand to Parent" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Skeleton.." +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Make Bones" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Clear Bones" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Show Bones" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Make IK Chain" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Clear IK Chain" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +#: editor/plugins/spatial_editor_plugin.cpp +msgid "View" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Zoom Reset" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Zoom Set.." +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Center Selection" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Frame Selection" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Anchor" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Insert Keys" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Insert Key" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Insert Key (Existing Tracks)" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Copy Pose" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Clear Pose" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Set a Value" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Snap (Pixels):" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Add %s" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Adding %s..." +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp editor/scene_tree_dock.cpp +msgid "Create Node" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp editor/scene_tree_dock.cpp +msgid "Error instancing scene from %s" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp editor/scene_tree_dock.cpp +msgid "OK :(" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp editor/scene_tree_dock.cpp +msgid "No parent to instance a child at." +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp editor/scene_tree_dock.cpp +msgid "This operation requires a single selected node." +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Change default type" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp editor/scene_tree_dock.cpp +#: scene/gui/dialogs.cpp +msgid "OK" +msgstr "Oké" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "" +"Drag & drop + Shift : Add node as sibling\n" +"Drag & drop + Alt : Change node type" +msgstr "" + +#: editor/plugins/collision_polygon_2d_editor_plugin.cpp +#: editor/plugins/light_occluder_2d_editor_plugin.cpp +#: editor/plugins/navigation_polygon_editor_plugin.cpp +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Create Poly" +msgstr "" + +#: editor/plugins/collision_polygon_2d_editor_plugin.cpp +#: editor/plugins/collision_polygon_editor_plugin.cpp +#: editor/plugins/light_occluder_2d_editor_plugin.cpp +#: editor/plugins/navigation_polygon_editor_plugin.cpp +#: editor/plugins/path_2d_editor_plugin.cpp +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Edit Poly" +msgstr "" + +#: editor/plugins/collision_polygon_2d_editor_plugin.cpp +#: editor/plugins/collision_polygon_editor_plugin.cpp +#: editor/plugins/light_occluder_2d_editor_plugin.cpp +#: editor/plugins/navigation_polygon_editor_plugin.cpp +#: editor/plugins/path_2d_editor_plugin.cpp +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Edit Poly (Remove Point)" +msgstr "" + +#: editor/plugins/collision_polygon_2d_editor_plugin.cpp +#: editor/plugins/light_occluder_2d_editor_plugin.cpp +#: editor/plugins/navigation_polygon_editor_plugin.cpp +msgid "Create a new polygon from scratch." +msgstr "" + +#: editor/plugins/collision_polygon_editor_plugin.cpp +msgid "Create Poly3D" +msgstr "" + +#: editor/plugins/collision_shape_2d_editor_plugin.cpp +msgid "Set Handle" +msgstr "" + +#: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp +msgid "Add/Remove Color Ramp Point" +msgstr "" + +#: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Modify Color Ramp" +msgstr "" + +#: editor/plugins/cube_grid_theme_editor_plugin.cpp +msgid "Creating Mesh Library" +msgstr "" + +#: editor/plugins/cube_grid_theme_editor_plugin.cpp +msgid "Thumbnail.." +msgstr "" + +#: editor/plugins/cube_grid_theme_editor_plugin.cpp +msgid "Remove item %d?" +msgstr "" + +#: editor/plugins/cube_grid_theme_editor_plugin.cpp +#: editor/plugins/theme_editor_plugin.cpp +#: editor/plugins/tile_set_editor_plugin.cpp +msgid "Add Item" +msgstr "" + +#: editor/plugins/cube_grid_theme_editor_plugin.cpp +msgid "Remove Selected Item" +msgstr "" + +#: editor/plugins/cube_grid_theme_editor_plugin.cpp +msgid "Import from Scene" +msgstr "" + +#: editor/plugins/cube_grid_theme_editor_plugin.cpp +msgid "Update from Scene" +msgstr "" + +#: editor/plugins/curve_editor_plugin.cpp +msgid "Modify Curve" +msgstr "" + +#: editor/plugins/item_list_editor_plugin.cpp +msgid "Item %d" +msgstr "" + +#: editor/plugins/item_list_editor_plugin.cpp +msgid "Items" +msgstr "" + +#: editor/plugins/item_list_editor_plugin.cpp +msgid "Item List Editor" +msgstr "" + +#: editor/plugins/light_occluder_2d_editor_plugin.cpp +msgid "Create Occluder Polygon" +msgstr "" + +#: editor/plugins/light_occluder_2d_editor_plugin.cpp +#: editor/plugins/navigation_polygon_editor_plugin.cpp +msgid "Edit existing polygon:" +msgstr "" + +#: editor/plugins/light_occluder_2d_editor_plugin.cpp +#: editor/plugins/navigation_polygon_editor_plugin.cpp +msgid "LMB: Move Point." +msgstr "" + +#: editor/plugins/light_occluder_2d_editor_plugin.cpp +#: editor/plugins/navigation_polygon_editor_plugin.cpp +msgid "Ctrl+LMB: Split Segment." +msgstr "" + +#: editor/plugins/light_occluder_2d_editor_plugin.cpp +#: editor/plugins/navigation_polygon_editor_plugin.cpp +msgid "RMB: Erase Point." +msgstr "" + +#: editor/plugins/line_2d_editor_plugin.cpp +msgid "Remove Point from Line2D" +msgstr "" + +#: editor/plugins/line_2d_editor_plugin.cpp +#, fuzzy +msgid "Add Point to Line2D" +msgstr "Ga naar Regel" + +#: editor/plugins/line_2d_editor_plugin.cpp +msgid "Move Point in Line2D" +msgstr "" + +#: editor/plugins/line_2d_editor_plugin.cpp +#: editor/plugins/path_2d_editor_plugin.cpp +#: editor/plugins/path_editor_plugin.cpp +msgid "Select Points" +msgstr "" + +#: editor/plugins/line_2d_editor_plugin.cpp +#: editor/plugins/path_2d_editor_plugin.cpp +#: editor/plugins/path_editor_plugin.cpp +msgid "Shift+Drag: Select Control Points" +msgstr "" + +#: editor/plugins/line_2d_editor_plugin.cpp +#: editor/plugins/path_2d_editor_plugin.cpp +#: editor/plugins/path_editor_plugin.cpp +msgid "Click: Add Point" +msgstr "" + +#: editor/plugins/line_2d_editor_plugin.cpp +#: editor/plugins/path_2d_editor_plugin.cpp +#: editor/plugins/path_editor_plugin.cpp +msgid "Right Click: Delete Point" +msgstr "" + +#: editor/plugins/line_2d_editor_plugin.cpp +#: editor/plugins/path_2d_editor_plugin.cpp +#: editor/plugins/path_editor_plugin.cpp +msgid "Add Point (in empty space)" +msgstr "" + +#: editor/plugins/line_2d_editor_plugin.cpp +msgid "Split Segment (in line)" +msgstr "" + +#: editor/plugins/line_2d_editor_plugin.cpp +#: editor/plugins/path_2d_editor_plugin.cpp +#: editor/plugins/path_editor_plugin.cpp +msgid "Delete Point" +msgstr "" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Mesh is empty!" +msgstr "" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Static Trimesh Body" +msgstr "" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Static Convex Body" +msgstr "" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "This doesn't work on scene root!" +msgstr "" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Trimesh Shape" +msgstr "" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Convex Shape" +msgstr "" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Navigation Mesh" +msgstr "" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "MeshInstance lacks a Mesh!" +msgstr "" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Mesh has not surface to create outlines from!" +msgstr "" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Could not create outline!" +msgstr "" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Outline" +msgstr "" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Trimesh Static Body" +msgstr "" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Convex Static Body" +msgstr "" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Trimesh Collision Sibling" +msgstr "" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Convex Collision Sibling" +msgstr "" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Outline Mesh.." +msgstr "" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Outline Mesh" +msgstr "" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Outline Size:" +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "No mesh source specified (and no MultiMesh set in node)." +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "No mesh source specified (and MultiMesh contains no Mesh)." +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Mesh source is invalid (invalid path)." +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Mesh source is invalid (not a MeshInstance)." +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Mesh source is invalid (contains no Mesh resource)." +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "No surface source specified." +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Surface source is invalid (invalid path)." +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Surface source is invalid (no geometry)." +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Surface source is invalid (no faces)." +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Parent has no solid faces to populate." +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Couldn't map area." +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Select a Source Mesh:" +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Select a Target Surface:" +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Populate Surface" +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Populate MultiMesh" +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Target Surface:" +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Source Mesh:" +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "X-Axis" +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Y-Axis" +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Z-Axis" +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Mesh Up Axis:" +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Random Rotation:" +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Random Tilt:" +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Random Scale:" +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Populate" +msgstr "" + +#: editor/plugins/navigation_polygon_editor_plugin.cpp +msgid "Create Navigation Polygon" +msgstr "" + +#: editor/plugins/navigation_polygon_editor_plugin.cpp +msgid "Remove Poly And Point" +msgstr "" + +#: editor/plugins/particles_2d_editor_plugin.cpp +msgid "Error loading image:" +msgstr "" + +#: editor/plugins/particles_2d_editor_plugin.cpp +msgid "No pixels with transparency > 128 in image.." +msgstr "" + +#: editor/plugins/particles_2d_editor_plugin.cpp +msgid "Set Emission Mask" +msgstr "" + +#: editor/plugins/particles_2d_editor_plugin.cpp +msgid "Clear Emission Mask" +msgstr "" + +#: editor/plugins/particles_2d_editor_plugin.cpp +msgid "Load Emission Mask" +msgstr "" + +#: editor/plugins/particles_2d_editor_plugin.cpp +msgid "Generated Point Count:" +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp +msgid "Node does not contain geometry." +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp +msgid "Node does not contain geometry (faces)." +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp +msgid "A processor material of type 'ParticlesMaterial' is required." +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp +msgid "Faces contain no area!" +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp +msgid "No faces!" +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp +msgid "Generate AABB" +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp +msgid "Create Emission Points From Mesh" +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp +msgid "Create Emission Points From Node" +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp +msgid "Clear Emitter" +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp +msgid "Create Emitter" +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp +msgid "Emission Points:" +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp +msgid "Surface Points" +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp +msgid "Surface Points+Normal (Directed)" +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp +msgid "Volume" +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp +msgid "Emission Source: " +msgstr "" + +#: editor/plugins/path_2d_editor_plugin.cpp +msgid "Remove Point from Curve" +msgstr "" + +#: editor/plugins/path_2d_editor_plugin.cpp +#: editor/plugins/path_editor_plugin.cpp +msgid "Add Point to Curve" +msgstr "" + +#: editor/plugins/path_2d_editor_plugin.cpp +msgid "Move Point in Curve" +msgstr "" + +#: editor/plugins/path_2d_editor_plugin.cpp +msgid "Move In-Control in Curve" +msgstr "" + +#: editor/plugins/path_2d_editor_plugin.cpp +msgid "Move Out-Control in Curve" +msgstr "" + +#: editor/plugins/path_2d_editor_plugin.cpp +msgid "Select Control Points (Shift+Drag)" +msgstr "" + +#: editor/plugins/path_2d_editor_plugin.cpp +#: editor/plugins/path_editor_plugin.cpp +msgid "Split Segment (in curve)" +msgstr "" + +#: editor/plugins/path_2d_editor_plugin.cpp +#: editor/plugins/path_editor_plugin.cpp +msgid "Close Curve" +msgstr "" + +#: editor/plugins/path_editor_plugin.cpp +msgid "Curve Point #" +msgstr "" + +#: editor/plugins/path_editor_plugin.cpp +msgid "Set Curve Point Pos" +msgstr "" + +#: editor/plugins/path_editor_plugin.cpp +msgid "Set Curve In Pos" +msgstr "" + +#: editor/plugins/path_editor_plugin.cpp +msgid "Set Curve Out Pos" +msgstr "" + +#: editor/plugins/path_editor_plugin.cpp +msgid "Split Path" +msgstr "" + +#: editor/plugins/path_editor_plugin.cpp +msgid "Remove Path Point" +msgstr "" + +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Create UV Map" +msgstr "" + +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Transform UV Map" +msgstr "" + +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Polygon 2D UV Editor" +msgstr "" + +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Move Point" +msgstr "" + +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Ctrl: Rotate" +msgstr "" + +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Shift: Move All" +msgstr "" + +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Shift+Ctrl: Scale" +msgstr "" + +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Move Polygon" +msgstr "" + +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Rotate Polygon" +msgstr "" + +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Scale Polygon" +msgstr "" + +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Polygon->UV" +msgstr "" + +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "UV->Polygon" +msgstr "" + +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Clear UV" +msgstr "" + +#: editor/plugins/polygon_2d_editor_plugin.cpp +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Snap" +msgstr "" + +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Enable Snap" +msgstr "" + +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Grid" +msgstr "" + +#: editor/plugins/resource_preloader_editor_plugin.cpp +msgid "ERROR: Couldn't load resource!" +msgstr "" + +#: editor/plugins/resource_preloader_editor_plugin.cpp +msgid "Add Resource" +msgstr "" + +#: editor/plugins/resource_preloader_editor_plugin.cpp +msgid "Rename Resource" +msgstr "" + +#: editor/plugins/resource_preloader_editor_plugin.cpp +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Delete Resource" +msgstr "" + +#: editor/plugins/resource_preloader_editor_plugin.cpp +msgid "Resource clipboard is empty!" +msgstr "" + +#: editor/plugins/resource_preloader_editor_plugin.cpp +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Load Resource" +msgstr "" + +#: editor/plugins/resource_preloader_editor_plugin.cpp +#: editor/plugins/script_text_editor.cpp +#: editor/plugins/shader_editor_plugin.cpp +#: editor/plugins/sprite_frames_editor_plugin.cpp editor/property_editor.cpp +#: editor/resources_dock.cpp scene/gui/line_edit.cpp scene/gui/text_edit.cpp +msgid "Paste" +msgstr "Plakken" + +#: editor/plugins/rich_text_editor_plugin.cpp +msgid "Parse BBCode" +msgstr "" + +#: editor/plugins/sample_editor_plugin.cpp +msgid "Length:" +msgstr "" + +#: editor/plugins/sample_library_editor_plugin.cpp +msgid "Open Sample File(s)" +msgstr "" + +#: editor/plugins/sample_library_editor_plugin.cpp +msgid "ERROR: Couldn't load sample!" +msgstr "" + +#: editor/plugins/sample_library_editor_plugin.cpp +msgid "Add Sample" +msgstr "" + +#: editor/plugins/sample_library_editor_plugin.cpp +msgid "Rename Sample" +msgstr "" + +#: editor/plugins/sample_library_editor_plugin.cpp +msgid "Delete Sample" +msgstr "" + +#: editor/plugins/sample_library_editor_plugin.cpp +msgid "16 Bits" +msgstr "" + +#: editor/plugins/sample_library_editor_plugin.cpp +msgid "8 Bits" +msgstr "" + +#: editor/plugins/sample_library_editor_plugin.cpp +msgid "Stereo" +msgstr "" + +#: editor/plugins/sample_library_editor_plugin.cpp +msgid "Mono" +msgstr "" + +#: editor/plugins/sample_library_editor_plugin.cpp +#: editor/script_editor_debugger.cpp +msgid "Format" +msgstr "" + +#: editor/plugins/sample_library_editor_plugin.cpp +msgid "Pitch" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Error while saving theme" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Error saving" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Error importing theme" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Error importing" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Import Theme" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Save Theme As.." +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Next script" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Previous script" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "File" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp editor/property_editor.cpp +msgid "New" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Save All" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Soft Reload Script" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "History Prev" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "History Next" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Reload Theme" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Save Theme" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Save Theme As" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Close Docs" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Close All" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +#: editor/plugins/script_text_editor.cpp +#: editor/plugins/shader_editor_plugin.cpp +msgid "Find.." +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +#: editor/plugins/script_text_editor.cpp +#: editor/plugins/shader_editor_plugin.cpp +msgid "Find Next" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Debug" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp editor/script_editor_debugger.cpp +msgid "Step Over" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp editor/script_editor_debugger.cpp +msgid "Step Into" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp editor/script_editor_debugger.cpp +msgid "Break" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp editor/script_editor_debugger.cpp +msgid "Continue" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Keep Debugger Open" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Window" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Move Left" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Move Right" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Tutorials" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Open https://godotengine.org at tutorials section." +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Classes" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Search the class hierarchy." +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Search the reference documentation." +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Go to previous edited document." +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Go to next edited document." +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +#, fuzzy +msgid "Discard" +msgstr "Discreet" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Create Script" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "" +"The following files are newer on disk.\n" +"What action should be taken?:" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Reload" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Resave" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp editor/script_editor_debugger.cpp +msgid "Debugger" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp +msgid "" +"Built-in scripts can only be edited when the scene they belong to is loaded" +msgstr "" + +#: editor/plugins/script_text_editor.cpp +msgid "Pick Color" +msgstr "" + +#: editor/plugins/script_text_editor.cpp +#: editor/plugins/shader_editor_plugin.cpp scene/gui/line_edit.cpp +#: scene/gui/text_edit.cpp +msgid "Cut" +msgstr "Knippen" + +#: editor/plugins/script_text_editor.cpp +#: editor/plugins/shader_editor_plugin.cpp editor/property_editor.cpp +#: editor/resources_dock.cpp scene/gui/line_edit.cpp scene/gui/text_edit.cpp +msgid "Copy" +msgstr "Kopiëren" + +#: editor/plugins/script_text_editor.cpp +#: editor/plugins/shader_editor_plugin.cpp scene/gui/line_edit.cpp +#: scene/gui/text_edit.cpp +msgid "Select All" +msgstr "Alles Selecteren" + +#: editor/plugins/script_text_editor.cpp editor/scene_tree_dock.cpp +msgid "Move Up" +msgstr "" + +#: editor/plugins/script_text_editor.cpp editor/scene_tree_dock.cpp +msgid "Move Down" +msgstr "" + +#: editor/plugins/script_text_editor.cpp +msgid "Indent Left" +msgstr "" + +#: editor/plugins/script_text_editor.cpp +msgid "Indent Right" +msgstr "" + +#: editor/plugins/script_text_editor.cpp +msgid "Toggle Comment" +msgstr "" + +#: editor/plugins/script_text_editor.cpp +msgid "Clone Down" +msgstr "" + +#: editor/plugins/script_text_editor.cpp +msgid "Complete Symbol" +msgstr "" + +#: editor/plugins/script_text_editor.cpp +msgid "Trim Trailing Whitespace" +msgstr "" + +#: editor/plugins/script_text_editor.cpp +msgid "Auto Indent" +msgstr "" + +#: editor/plugins/script_text_editor.cpp +#: modules/visual_script/visual_script_editor.cpp +msgid "Toggle Breakpoint" +msgstr "Breekpunt Aan- of Uitschakelen" + +#: editor/plugins/script_text_editor.cpp +msgid "Remove All Breakpoints" +msgstr "" + +#: editor/plugins/script_text_editor.cpp +msgid "Goto Next Breakpoint" +msgstr "" + +#: editor/plugins/script_text_editor.cpp +msgid "Goto Previous Breakpoint" +msgstr "" + +#: editor/plugins/script_text_editor.cpp +#: editor/plugins/shader_editor_plugin.cpp +msgid "Find Previous" +msgstr "" + +#: editor/plugins/script_text_editor.cpp +#: editor/plugins/shader_editor_plugin.cpp +msgid "Replace.." +msgstr "" + +#: editor/plugins/script_text_editor.cpp +msgid "Goto Function.." +msgstr "" + +#: editor/plugins/script_text_editor.cpp +#: editor/plugins/shader_editor_plugin.cpp +msgid "Goto Line.." +msgstr "" + +#: editor/plugins/script_text_editor.cpp +msgid "Contextual Help" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Scalar Constant" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Vec Constant" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change RGB Constant" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Scalar Operator" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Vec Operator" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Vec Scalar Operator" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change RGB Operator" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Toggle Rot Only" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Scalar Function" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Vec Function" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Scalar Uniform" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Vec Uniform" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change RGB Uniform" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Default Value" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change XForm Uniform" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Texture Uniform" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Cubemap Uniform" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Comment" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Add/Remove to Color Ramp" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Add/Remove to Curve Map" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Modify Curve Map" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Input Name" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Connect Graph Nodes" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Disconnect Graph Nodes" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Remove Shader Graph Node" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Move Shader Graph Node" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Duplicate Graph Node(s)" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Delete Shader Graph Node(s)" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Error: Cyclic Connection Link" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Error: Missing Input Connections" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Add Shader Graph Node" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Orthogonal" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Perspective" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Transform Aborted." +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "X-Axis Transform." +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Y-Axis Transform." +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Z-Axis Transform." +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "View Plane Transform." +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Scaling to %s%%." +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Rotating %s degrees." +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Bottom View." +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Bottom" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Top View." +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Top" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Rear View." +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Rear" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Front View." +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Front" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Left View." +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Left" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Right View." +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Right" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Keying is disabled (no key inserted)." +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Animation Key Inserted." +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Align with view" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Environment" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Audio Listener" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Gizmos" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "XForm Dialog" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "No scene selected to instance!" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Instance at Cursor" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Could not instance scene!" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Move Mode (W)" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Rotate Mode (E)" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Scale Mode (R)" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Bottom View" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Top View" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Rear View" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Front View" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Left View" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Right View" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Switch Perspective/Orthogonal view" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Insert Animation Key" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Focus Origin" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Focus Selection" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Align Selection With View" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Transform" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Local Coords" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Transform Dialog.." +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Use Default Light" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Use Default sRGB" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "1 Viewport" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "2 Viewports" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "2 Viewports (Alt)" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "3 Viewports" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "3 Viewports (Alt)" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "4 Viewports" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Display Normal" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Display Wireframe" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Display Overdraw" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Display Shadeless" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "View Origin" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "View Grid" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Snap Settings" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Translate Snap:" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Rotate Snap (deg.):" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Scale Snap (%):" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Viewport Settings" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Default Light Normal:" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Ambient Light Color:" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Perspective FOV (deg.):" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "View Z-Near:" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "View Z-Far:" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Transform Change" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Translate:" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Rotate (deg.):" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Scale (ratio):" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Transform Type" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Pre" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Post" +msgstr "" + +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "ERROR: Couldn't load frame resource!" +msgstr "" + +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Add Frame" +msgstr "" + +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Resource clipboard is empty or not a texture!" +msgstr "" + +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Paste Frame" +msgstr "" + +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Add Empty" +msgstr "" + +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Change Animation Loop" +msgstr "" + +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Change Animation FPS" +msgstr "" + +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "(empty)" +msgstr "" + +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Animations" +msgstr "" + +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Speed (FPS):" +msgstr "" + +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Animation Frames" +msgstr "" + +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Insert Empty (Before)" +msgstr "" + +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Insert Empty (After)" +msgstr "" + +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Up" +msgstr "" + +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Down" +msgstr "" + +#: editor/plugins/style_box_editor_plugin.cpp +msgid "StyleBox Preview:" +msgstr "" + +#: editor/plugins/texture_region_editor_plugin.cpp +msgid "Snap Mode:" +msgstr "" + +#: editor/plugins/texture_region_editor_plugin.cpp +msgid "<None>" +msgstr "" + +#: editor/plugins/texture_region_editor_plugin.cpp +msgid "Pixel Snap" +msgstr "" + +#: editor/plugins/texture_region_editor_plugin.cpp +msgid "Grid Snap" +msgstr "" + +#: editor/plugins/texture_region_editor_plugin.cpp +msgid "Auto Slice" +msgstr "" + +#: editor/plugins/texture_region_editor_plugin.cpp +msgid "Offset:" +msgstr "" + +#: editor/plugins/texture_region_editor_plugin.cpp +msgid "Step:" +msgstr "" + +#: editor/plugins/texture_region_editor_plugin.cpp +msgid "Separation:" +msgstr "" + +#: editor/plugins/texture_region_editor_plugin.cpp +msgid "Texture Region" +msgstr "" + +#: editor/plugins/texture_region_editor_plugin.cpp +msgid "Texture Region Editor" +msgstr "" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Can't save theme to file:" +msgstr "" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Add All Items" +msgstr "" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Add All" +msgstr "" + +#: editor/plugins/theme_editor_plugin.cpp +#: editor/plugins/tile_set_editor_plugin.cpp +msgid "Remove Item" +msgstr "" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Theme" +msgstr "" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Add Class Items" +msgstr "" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Remove Class Items" +msgstr "" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Create Empty Template" +msgstr "" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Create Empty Editor Template" +msgstr "" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "CheckBox Radio1" +msgstr "" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "CheckBox Radio2" +msgstr "" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Item" +msgstr "" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Check Item" +msgstr "" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Checked Item" +msgstr "" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Has" +msgstr "" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Many" +msgstr "" + +#: editor/plugins/theme_editor_plugin.cpp editor/project_export.cpp +msgid "Options" +msgstr "" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Have,Many,Several,Options!" +msgstr "" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Tab 1" +msgstr "" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Tab 2" +msgstr "" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Tab 3" +msgstr "" + +#: editor/plugins/theme_editor_plugin.cpp editor/project_settings.cpp +#: editor/scene_tree_editor.cpp editor/script_editor_debugger.cpp +msgid "Type:" +msgstr "" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Data Type:" +msgstr "" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Icon" +msgstr "" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Style" +msgstr "" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Color" +msgstr "" + +#: editor/plugins/tile_map_editor_plugin.cpp +msgid "Paint TileMap" +msgstr "" + +#: editor/plugins/tile_map_editor_plugin.cpp editor/scene_tree_dock.cpp +msgid "Duplicate" +msgstr "" + +#: editor/plugins/tile_map_editor_plugin.cpp +msgid "Erase TileMap" +msgstr "" + +#: editor/plugins/tile_map_editor_plugin.cpp +msgid "Erase selection" +msgstr "" + +#: editor/plugins/tile_map_editor_plugin.cpp +msgid "Find tile" +msgstr "" + +#: editor/plugins/tile_map_editor_plugin.cpp +msgid "Transpose" +msgstr "" + +#: editor/plugins/tile_map_editor_plugin.cpp +msgid "Mirror X" +msgstr "" + +#: editor/plugins/tile_map_editor_plugin.cpp +msgid "Mirror Y" +msgstr "" + +#: editor/plugins/tile_map_editor_plugin.cpp +msgid "Bucket" +msgstr "" + +#: editor/plugins/tile_map_editor_plugin.cpp +msgid "Pick Tile" +msgstr "" + +#: editor/plugins/tile_map_editor_plugin.cpp +msgid "Select" +msgstr "" + +#: editor/plugins/tile_map_editor_plugin.cpp +msgid "Rotate 0 degrees" +msgstr "" + +#: editor/plugins/tile_map_editor_plugin.cpp +msgid "Rotate 90 degrees" +msgstr "" + +#: editor/plugins/tile_map_editor_plugin.cpp +msgid "Rotate 180 degrees" +msgstr "" + +#: editor/plugins/tile_map_editor_plugin.cpp +msgid "Rotate 270 degrees" +msgstr "" + +#: editor/plugins/tile_set_editor_plugin.cpp +msgid "Could not find tile:" +msgstr "" + +#: editor/plugins/tile_set_editor_plugin.cpp +msgid "Item name or ID:" +msgstr "" + +#: editor/plugins/tile_set_editor_plugin.cpp +msgid "Create from scene?" +msgstr "" + +#: editor/plugins/tile_set_editor_plugin.cpp +msgid "Merge from scene?" +msgstr "" + +#: editor/plugins/tile_set_editor_plugin.cpp +msgid "Create from Scene" +msgstr "" + +#: editor/plugins/tile_set_editor_plugin.cpp +msgid "Merge from Scene" +msgstr "" + +#: editor/plugins/tile_set_editor_plugin.cpp editor/script_editor_debugger.cpp +msgid "Error" +msgstr "" + +#: editor/project_export.cpp +#, fuzzy +msgid "Runnable" +msgstr "Inschakelen" + +#: editor/project_export.cpp +#, fuzzy +msgid "Delete patch '" +msgstr "Verwijder" + +#: editor/project_export.cpp +#, fuzzy +msgid "Delete preset '%s'?" +msgstr "Verwijder geselecteerde bestanden?" + +#: editor/project_export.cpp +msgid "Presets" +msgstr "" + +#: editor/project_export.cpp editor/project_settings.cpp +msgid "Add.." +msgstr "" + +#: editor/project_export.cpp +msgid "Resources" +msgstr "" + +#: editor/project_export.cpp +msgid "Export all resources in the project" +msgstr "" + +#: editor/project_export.cpp +msgid "Export selected scenes (and dependencies)" +msgstr "" + +#: editor/project_export.cpp +msgid "Export selected resources (and dependencies)" +msgstr "" + +#: editor/project_export.cpp +msgid "Export Mode:" +msgstr "" + +#: editor/project_export.cpp +msgid "Resources to export:" +msgstr "" + +#: editor/project_export.cpp +msgid "" +"Filters to export non-resource files (comma separated, e.g: *.json, *.txt)" +msgstr "" + +#: editor/project_export.cpp +msgid "" +"Filters to exclude files from project (comma separated, e.g: *.json, *.txt)" +msgstr "" + +#: editor/project_export.cpp +#, fuzzy +msgid "Patches" +msgstr "Matches:" + +#: editor/project_export.cpp +msgid "Make Patch" +msgstr "" + +#: editor/project_export.cpp +msgid "Export templates for this platform are missing:" +msgstr "" + +#: editor/project_export.cpp +msgid "Export With Debug" +msgstr "" + +#: editor/project_manager.cpp +msgid "Invalid project path, the path must exist!" +msgstr "" + +#: editor/project_manager.cpp +msgid "Invalid project path, godot.cfg must not exist." +msgstr "" + +#: editor/project_manager.cpp +msgid "Invalid project path, godot.cfg must exist." +msgstr "" + +#: editor/project_manager.cpp +msgid "Imported Project" +msgstr "" + +#: editor/project_manager.cpp +msgid "Invalid project path (changed anything?)." +msgstr "" + +#: editor/project_manager.cpp +msgid "Couldn't create godot.cfg in project path." +msgstr "" + +#: editor/project_manager.cpp +msgid "The following files failed extraction from package:" +msgstr "" + +#: editor/project_manager.cpp +msgid "Package Installed Successfully!" +msgstr "" + +#: editor/project_manager.cpp +msgid "Import Existing Project" +msgstr "" + +#: editor/project_manager.cpp +msgid "Project Path (Must Exist):" +msgstr "" + +#: editor/project_manager.cpp +msgid "Project Name:" +msgstr "" + +#: editor/project_manager.cpp +msgid "Create New Project" +msgstr "" + +#: editor/project_manager.cpp +msgid "Project Path:" +msgstr "" + +#: editor/project_manager.cpp +msgid "Install Project:" +msgstr "" + +#: editor/project_manager.cpp +msgid "Install" +msgstr "" + +#: editor/project_manager.cpp +msgid "Browse" +msgstr "" + +#: editor/project_manager.cpp +msgid "New Game Project" +msgstr "" + +#: editor/project_manager.cpp +msgid "That's a BINGO!" +msgstr "" + +#: editor/project_manager.cpp +msgid "Unnamed Project" +msgstr "" + +#: editor/project_manager.cpp +msgid "Are you sure to open more than one project?" +msgstr "" + +#: editor/project_manager.cpp +msgid "Are you sure to run more than one project?" +msgstr "" + +#: editor/project_manager.cpp +msgid "Remove project from the list? (Folder contents will not be modified)" +msgstr "" + +#: editor/project_manager.cpp +msgid "" +"You are about the scan %s folders for existing Godot projects. Do you " +"confirm?" +msgstr "" + +#: editor/project_manager.cpp +msgid "Project Manager" +msgstr "" + +#: editor/project_manager.cpp +msgid "Project List" +msgstr "" + +#: editor/project_manager.cpp +msgid "Run" +msgstr "" + +#: editor/project_manager.cpp +msgid "Scan" +msgstr "" + +#: editor/project_manager.cpp +msgid "Select a Folder to Scan" +msgstr "" + +#: editor/project_manager.cpp +msgid "New Project" +msgstr "" + +#: editor/project_manager.cpp +msgid "Exit" +msgstr "" + +#: editor/project_settings.cpp +msgid "Key " +msgstr "" + +#: editor/project_settings.cpp +msgid "Joy Button" +msgstr "" + +#: editor/project_settings.cpp +msgid "Joy Axis" +msgstr "" + +#: editor/project_settings.cpp +msgid "Mouse Button" +msgstr "" + +#: editor/project_settings.cpp +msgid "Invalid action (anything goes but '/' or ':')." +msgstr "" + +#: editor/project_settings.cpp +msgid "Action '%s' already exists!" +msgstr "" + +#: editor/project_settings.cpp +msgid "Rename Input Action Event" +msgstr "" + +#: editor/project_settings.cpp +msgid "Add Input Action Event" +msgstr "" + +#: editor/project_settings.cpp editor/settings_config_dialog.cpp +#: scene/gui/input_action.cpp +msgid "Meta+" +msgstr "Meta+" + +#: editor/project_settings.cpp editor/settings_config_dialog.cpp +#: scene/gui/input_action.cpp +msgid "Shift+" +msgstr "Shift+" + +#: editor/project_settings.cpp editor/settings_config_dialog.cpp +#: scene/gui/input_action.cpp +msgid "Alt+" +msgstr "Alt+" + +#: editor/project_settings.cpp editor/settings_config_dialog.cpp +msgid "Control+" +msgstr "" + +#: editor/project_settings.cpp editor/settings_config_dialog.cpp +msgid "Press a Key.." +msgstr "" + +#: editor/project_settings.cpp +msgid "Mouse Button Index:" +msgstr "" + +#: editor/project_settings.cpp +msgid "Left Button" +msgstr "" + +#: editor/project_settings.cpp +msgid "Right Button" +msgstr "" + +#: editor/project_settings.cpp +msgid "Middle Button" +msgstr "" + +#: editor/project_settings.cpp +msgid "Wheel Up Button" +msgstr "" + +#: editor/project_settings.cpp +msgid "Wheel Down Button" +msgstr "" + +#: editor/project_settings.cpp +msgid "Button 6" +msgstr "" + +#: editor/project_settings.cpp +msgid "Button 7" +msgstr "" + +#: editor/project_settings.cpp +msgid "Button 8" +msgstr "" + +#: editor/project_settings.cpp +msgid "Button 9" +msgstr "" + +#: editor/project_settings.cpp +msgid "Joypad Axis Index:" +msgstr "" + +#: editor/project_settings.cpp scene/gui/input_action.cpp +msgid "Axis" +msgstr "As" + +#: editor/project_settings.cpp +msgid "Joypad Button Index:" +msgstr "" + +#: editor/project_settings.cpp +msgid "Add Input Action" +msgstr "" + +#: editor/project_settings.cpp +msgid "Erase Input Action Event" +msgstr "" + +#: editor/project_settings.cpp scene/gui/input_action.cpp +msgid "Device" +msgstr "Apparaat" + +#: editor/project_settings.cpp scene/gui/input_action.cpp +msgid "Button" +msgstr "Knop" + +#: editor/project_settings.cpp scene/gui/input_action.cpp +msgid "Left Button." +msgstr "Linker Knop." + +#: editor/project_settings.cpp scene/gui/input_action.cpp +msgid "Right Button." +msgstr "Rechter Knop." + +#: editor/project_settings.cpp scene/gui/input_action.cpp +msgid "Middle Button." +msgstr "Middelste Knop." + +#: editor/project_settings.cpp scene/gui/input_action.cpp +msgid "Wheel Up." +msgstr "Scrollwiel Omhoog." + +#: editor/project_settings.cpp scene/gui/input_action.cpp +msgid "Wheel Down." +msgstr "Scrollwiel Omlaag." + +#: editor/project_settings.cpp +msgid "Error saving settings." +msgstr "" + +#: editor/project_settings.cpp +msgid "Settings saved OK." +msgstr "" + +#: editor/project_settings.cpp +msgid "Add Translation" +msgstr "" + +#: editor/project_settings.cpp +msgid "Remove Translation" +msgstr "" + +#: editor/project_settings.cpp +msgid "Add Remapped Path" +msgstr "" + +#: editor/project_settings.cpp +msgid "Resource Remap Add Remap" +msgstr "" + +#: editor/project_settings.cpp +msgid "Change Resource Remap Language" +msgstr "" + +#: editor/project_settings.cpp +msgid "Remove Resource Remap" +msgstr "" + +#: editor/project_settings.cpp +msgid "Remove Resource Remap Option" +msgstr "" + +#: editor/project_settings.cpp +msgid "Project Settings (godot.cfg)" +msgstr "" + +#: editor/project_settings.cpp editor/settings_config_dialog.cpp +msgid "General" +msgstr "" + +#: editor/project_settings.cpp editor/property_editor.cpp +msgid "Property:" +msgstr "" + +#: editor/project_settings.cpp +msgid "Del" +msgstr "" + +#: editor/project_settings.cpp +msgid "Copy To Platform.." +msgstr "" + +#: editor/project_settings.cpp +msgid "Input Map" +msgstr "" + +#: editor/project_settings.cpp +msgid "Action:" +msgstr "" + +#: editor/project_settings.cpp +msgid "Device:" +msgstr "" + +#: editor/project_settings.cpp +msgid "Index:" +msgstr "" + +#: editor/project_settings.cpp +msgid "Localization" +msgstr "" + +#: editor/project_settings.cpp +msgid "Translations" +msgstr "" + +#: editor/project_settings.cpp +msgid "Translations:" +msgstr "" + +#: editor/project_settings.cpp +msgid "Remaps" +msgstr "" + +#: editor/project_settings.cpp +msgid "Resources:" +msgstr "" + +#: editor/project_settings.cpp +msgid "Remaps by Locale:" +msgstr "" + +#: editor/project_settings.cpp +msgid "Locale" +msgstr "" + +#: editor/project_settings.cpp +msgid "AutoLoad" +msgstr "" + +#: editor/project_settings.cpp +msgid "Plugins" +msgstr "" + +#: editor/property_editor.cpp +msgid "Pick a Viewport" +msgstr "" + +#: editor/property_editor.cpp +msgid "Ease In" +msgstr "" + +#: editor/property_editor.cpp +msgid "Ease Out" +msgstr "" + +#: editor/property_editor.cpp +msgid "Zero" +msgstr "" + +#: editor/property_editor.cpp +msgid "Easing In-Out" +msgstr "" + +#: editor/property_editor.cpp +msgid "Easing Out-In" +msgstr "" + +#: editor/property_editor.cpp +msgid "File.." +msgstr "" + +#: editor/property_editor.cpp +msgid "Dir.." +msgstr "" + +#: editor/property_editor.cpp +msgid "Assign" +msgstr "" + +#: editor/property_editor.cpp +msgid "New Script" +msgstr "" + +#: editor/property_editor.cpp +msgid "Show in File System" +msgstr "" + +#: editor/property_editor.cpp +msgid "Error loading file: Not a resource!" +msgstr "" + +#: editor/property_editor.cpp +msgid "Couldn't load image" +msgstr "" + +#: editor/property_editor.cpp +#, fuzzy +msgid "Pick a Node" +msgstr "Plak Nodes" + +#: editor/property_editor.cpp +msgid "Bit %d, val %d." +msgstr "" + +#: editor/property_editor.cpp +msgid "On" +msgstr "" + +#: editor/property_editor.cpp modules/visual_script/visual_script_editor.cpp +msgid "Set" +msgstr "Zet" + +#: editor/property_editor.cpp +msgid "Properties:" +msgstr "" + +#: editor/property_editor.cpp +msgid "Sections:" +msgstr "" + +#: editor/property_selector.cpp +msgid "Select Property" +msgstr "" + +#: editor/property_selector.cpp +msgid "Select Method" +msgstr "" + +#: editor/pvrtc_compress.cpp +msgid "Could not execute PVRTC tool:" +msgstr "" + +#: editor/pvrtc_compress.cpp +msgid "Can't load back converted image using PVRTC tool:" +msgstr "" + +#: editor/reparent_dialog.cpp editor/scene_tree_dock.cpp +msgid "Reparent Node" +msgstr "" + +#: editor/reparent_dialog.cpp +msgid "Reparent Location (Select new Parent):" +msgstr "" + +#: editor/reparent_dialog.cpp +msgid "Keep Global Transform" +msgstr "" + +#: editor/reparent_dialog.cpp editor/scene_tree_dock.cpp +msgid "Reparent" +msgstr "" + +#: editor/resources_dock.cpp +msgid "Create New Resource" +msgstr "" + +#: editor/resources_dock.cpp +msgid "Open Resource" +msgstr "" + +#: editor/resources_dock.cpp +msgid "Save Resource" +msgstr "" + +#: editor/resources_dock.cpp +msgid "Resource Tools" +msgstr "" + +#: editor/resources_dock.cpp +msgid "Make Local" +msgstr "" + +#: editor/run_settings_dialog.cpp +msgid "Run Mode:" +msgstr "" + +#: editor/run_settings_dialog.cpp +msgid "Current Scene" +msgstr "" + +#: editor/run_settings_dialog.cpp +msgid "Main Scene" +msgstr "" + +#: editor/run_settings_dialog.cpp +msgid "Main Scene Arguments:" +msgstr "" + +#: editor/run_settings_dialog.cpp +msgid "Scene Run Settings" +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "No parent to instance the scenes at." +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Error loading scene from %s" +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Ok" +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "" +"Cannot instance the scene '%s' because the current scene exists within one " +"of its nodes." +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Instance Scene(s)" +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "This operation can't be done on the tree root." +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Move Node In Parent" +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Move Nodes In Parent" +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Duplicate Node(s)" +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Delete Node(s)?" +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "This operation can't be done without a scene." +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Can not perform with the root node." +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "This operation can't be done on instanced scenes." +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Save New Scene As.." +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Makes Sense!" +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Can't operate on nodes from a foreign scene!" +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Can't operate on nodes the current scene inherits from!" +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Remove Node(s)" +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "" +"Couldn't save new scene. Likely dependencies (instances) couldn't be " +"satisfied." +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Error saving scene." +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Error duplicating scene to save it." +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Edit Groups" +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Edit Connections" +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Delete Node(s)" +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Add Child Node" +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Instance Child Scene" +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Change Type" +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Attach Script" +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Clear Script" +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Merge From Scene" +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Save Branch as Scene" +msgstr "" + +#: editor/scene_tree_dock.cpp +#, fuzzy +msgid "Copy Node Path" +msgstr "Kopiëer Nodes" + +#: editor/scene_tree_dock.cpp +msgid "Delete (No Confirm)" +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Add/Create a New Node" +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "" +"Instance a scene file as a Node. Creates an inherited scene if no root node " +"exists." +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Attach a new or existing script for the selected node." +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Clear a script for the selected node." +msgstr "" + +#: editor/scene_tree_editor.cpp +msgid "Toggle Spatial Visible" +msgstr "" + +#: editor/scene_tree_editor.cpp +msgid "Toggle CanvasItem Visible" +msgstr "" + +#: editor/scene_tree_editor.cpp +msgid "Instance:" +msgstr "" + +#: editor/scene_tree_editor.cpp +msgid "Invalid node name, the following characters are not allowed:" +msgstr "" + +#: editor/scene_tree_editor.cpp +msgid "Rename Node" +msgstr "" + +#: editor/scene_tree_editor.cpp +msgid "Scene Tree (Nodes):" +msgstr "" + +#: editor/scene_tree_editor.cpp +msgid "Editable Children" +msgstr "" + +#: editor/scene_tree_editor.cpp +msgid "Load As Placeholder" +msgstr "" + +#: editor/scene_tree_editor.cpp +msgid "Discard Instancing" +msgstr "" + +#: editor/scene_tree_editor.cpp +msgid "Open in Editor" +msgstr "" + +#: editor/scene_tree_editor.cpp +msgid "Clear Inheritance" +msgstr "" + +#: editor/scene_tree_editor.cpp +msgid "Clear Inheritance? (No Undo!)" +msgstr "" + +#: editor/scene_tree_editor.cpp +msgid "Clear!" +msgstr "" + +#: editor/scene_tree_editor.cpp +msgid "Select a Node" +msgstr "" + +#: editor/script_create_dialog.cpp +msgid "Invalid parent class name" +msgstr "" + +#: editor/script_create_dialog.cpp +msgid "Valid chars:" +msgstr "" + +#: editor/script_create_dialog.cpp +msgid "Invalid class name" +msgstr "" + +#: editor/script_create_dialog.cpp +msgid "Valid name" +msgstr "" + +#: editor/script_create_dialog.cpp +msgid "N/A" +msgstr "" + +#: editor/script_create_dialog.cpp +msgid "Class name is invalid!" +msgstr "" + +#: editor/script_create_dialog.cpp +msgid "Parent class name is invalid!" +msgstr "" + +#: editor/script_create_dialog.cpp +msgid "Invalid path!" +msgstr "" + +#: editor/script_create_dialog.cpp +msgid "Could not create script in filesystem." +msgstr "" + +#: editor/script_create_dialog.cpp +msgid "Error loading script from %s" +msgstr "" + +#: editor/script_create_dialog.cpp +msgid "Path is empty" +msgstr "" + +#: editor/script_create_dialog.cpp +msgid "Path is not local" +msgstr "" + +#: editor/script_create_dialog.cpp +msgid "Invalid base path" +msgstr "" + +#: editor/script_create_dialog.cpp +msgid "Invalid extension" +msgstr "" + +#: editor/script_create_dialog.cpp +msgid "Create new script" +msgstr "" + +#: editor/script_create_dialog.cpp +msgid "Load existing script" +msgstr "" + +#: editor/script_create_dialog.cpp +msgid "Class Name:" +msgstr "" + +#: editor/script_create_dialog.cpp +msgid "Built-In Script" +msgstr "" + +#: editor/script_create_dialog.cpp +msgid "Attach Node Script" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Bytes:" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Warning" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Error:" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Source:" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Function:" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Errors" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Child Process Connected" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Inspect Previous Instance" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Inspect Next Instance" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Stack Frames" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Variable" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Errors:" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Stack Trace (if applicable):" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Remote Inspector" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Live Scene Tree:" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Remote Object Properties: " +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Profiler" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Monitor" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Value" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Monitors" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "List of Video Memory Usage by Resource:" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Total:" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Video Mem" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Resource Path" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Type" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Usage" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Misc" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Clicked Control:" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Clicked Control Type:" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Live Edit Root:" +msgstr "" + +#: editor/script_editor_debugger.cpp +msgid "Set From Tree" +msgstr "" + +#: editor/settings_config_dialog.cpp +msgid "Shortcuts" +msgstr "" + +#: editor/spatial_editor_gizmos.cpp +msgid "Change Light Radius" +msgstr "" + +#: editor/spatial_editor_gizmos.cpp +msgid "Change Camera FOV" +msgstr "" + +#: editor/spatial_editor_gizmos.cpp +msgid "Change Camera Size" +msgstr "" + +#: editor/spatial_editor_gizmos.cpp +msgid "Change Sphere Shape Radius" +msgstr "" + +#: editor/spatial_editor_gizmos.cpp +msgid "Change Box Shape Extents" +msgstr "" + +#: editor/spatial_editor_gizmos.cpp +msgid "Change Capsule Shape Radius" +msgstr "" + +#: editor/spatial_editor_gizmos.cpp +msgid "Change Capsule Shape Height" +msgstr "" + +#: editor/spatial_editor_gizmos.cpp +msgid "Change Ray Shape Length" +msgstr "" + +#: editor/spatial_editor_gizmos.cpp +msgid "Change Notifier Extents" +msgstr "" + +#: editor/spatial_editor_gizmos.cpp +msgid "Change Probe Extents" +msgstr "" + +#: modules/gdscript/gd_functions.cpp +#: modules/visual_script/visual_script_builtin_funcs.cpp +msgid "Invalid type argument to convert(), use TYPE_* constants." +msgstr "Ongeldige type argument voor convert(), gebruik TYPE_* constanten." + +#: modules/gdscript/gd_functions.cpp +#: modules/visual_script/visual_script_builtin_funcs.cpp +msgid "Not enough bytes for decoding bytes, or invalid format." +msgstr "Niet genoeg bytes om bytes te decoderen, of ongeldig formaat." + +#: modules/gdscript/gd_functions.cpp +msgid "step argument is zero!" +msgstr "step argument is nul!" + +#: modules/gdscript/gd_functions.cpp +msgid "Not a script with an instance" +msgstr "Niet een script met een instantie" + +#: modules/gdscript/gd_functions.cpp +msgid "Not based on a script" +msgstr "Niet gebaseerd op een script" + +#: modules/gdscript/gd_functions.cpp +msgid "Not based on a resource file" +msgstr "Niet gebaseerd op een resource bestand" + +#: modules/gdscript/gd_functions.cpp +msgid "Invalid instance dictionary format (missing @path)" +msgstr "Ongeldige dictionary formaat van instantie (mist @path)" + +#: modules/gdscript/gd_functions.cpp +msgid "Invalid instance dictionary format (can't load script at @path)" +msgstr "" +"Ongeldige dictionary formaat van instantie (kan script niet laden uit @path)" + +#: modules/gdscript/gd_functions.cpp +msgid "Invalid instance dictionary format (invalid script at @path)" +msgstr "Ongeldige dictionary formaat van instantie (ongeldige script op @path)" + +#: modules/gdscript/gd_functions.cpp +msgid "Invalid instance dictionary (invalid subclasses)" +msgstr "Ongeldige dictionary van instantie (ongeldige subklassen)" + +#: modules/visual_script/visual_script.cpp +msgid "" +"A node yielded without working memory, please read the docs on how to yield " +"properly!" +msgstr "" +"Een node yieldde zonder werkgeheugen, lees alsjeblieft de documentatie over " +"het correct gebruik van yield!" + +#: modules/visual_script/visual_script.cpp +msgid "" +"Node yielded, but did not return a function state in the first working " +"memory." +msgstr "" +"Node yieldde, maar gaf geen functie toestand terug in het eerste " +"werkgeheugen." + +#: modules/visual_script/visual_script.cpp +msgid "" +"Return value must be assigned to first element of node working memory! Fix " +"your node please." +msgstr "" +"Een return waarde moet toegekend worden aan het eerste element van een node " +"zijn werkgeheugen! Repareer alsjeblieft je node." + +#: modules/visual_script/visual_script.cpp +msgid "Node returned an invalid sequence output: " +msgstr "Node gaf een ongeldige sequentie uitvoer: " + +#: modules/visual_script/visual_script.cpp +msgid "Found sequence bit but not the node in the stack, report bug!" +msgstr "" +"Een sequentie bit was gevonden, maar niet de node in de stack. Rapporteer " +"een bug!" + +#: modules/visual_script/visual_script.cpp +msgid "Stack overflow with stack depth: " +msgstr "Stack overloop met stack diepte: " + +#: modules/visual_script/visual_script_editor.cpp +msgid "Functions:" +msgstr "Functies:" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Variables:" +msgstr "Variabelen:" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Name is not a valid identifier:" +msgstr "Naam is geen geldige identifier:" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Name already in use by another func/var/signal:" +msgstr "Naam wordt al gebruikt door een andere functie, variabele of signaal:" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Rename Function" +msgstr "Hernoem Functie" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Rename Variable" +msgstr "Hernoem Variabele" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Rename Signal" +msgstr "Hernoem Signaal" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Add Function" +msgstr "Functie Toevoegen" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Add Variable" +msgstr "Variabele Toevoegen" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Add Signal" +msgstr "Signaal Toevoegen" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Remove Function" +msgstr "Verwijder Functie" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Remove Variable" +msgstr "Verwijder Variabele" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Editing Variable:" +msgstr "Variabele Bewerken:" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Remove Signal" +msgstr "Verwijder Signaal" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Editing Signal:" +msgstr "Signaal Bewerken:" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Change Expression" +msgstr "Verander Expressie" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Add Node" +msgstr "Node Toevoegen" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Hold Meta to drop a Getter. Hold Shift to drop a generic signature." +msgstr "" +"Houdt Meta ingedrukt om een Getter te plaatsen. Houdt Shift ingedrukt om een " +"generiek signatuur te plaatsen." + +#: modules/visual_script/visual_script_editor.cpp +msgid "Hold Ctrl to drop a Getter. Hold Shift to drop a generic signature." +msgstr "" +"Houdt Ctrl ingedrukt om een Getter te plaatsen. Houdt Shift ingedrukt om een " +"generiek signatuur te plaatsen." + +#: modules/visual_script/visual_script_editor.cpp +msgid "Hold Meta to drop a simple reference to the node." +msgstr "" +"Houdt Meta ingedrukt om een simpele referentie naar de node te plaatsen." + +#: modules/visual_script/visual_script_editor.cpp +msgid "Hold Ctrl to drop a simple reference to the node." +msgstr "" +"Houdt Ctrl ingedrukt om een simpele referentie naar de node te plaatsen." + +#: modules/visual_script/visual_script_editor.cpp +msgid "Hold Meta to drop a Variable Setter." +msgstr "Houdt Meta ingedrukt om een Variable Setter te plaatsen." + +#: modules/visual_script/visual_script_editor.cpp +msgid "Hold Ctrl to drop a Variable Setter." +msgstr "Houdt Ctrl ingedrukt om een Variable Setter te plaatsen." + +#: modules/visual_script/visual_script_editor.cpp +msgid "Add Preload Node" +msgstr "Preload Node Toevoegen" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Add Node(s) From Tree" +msgstr "Voeg Node(s) Toe Uit Tree" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Add Getter Property" +msgstr "Getter Property Toevoegen" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Add Setter Property" +msgstr "Setter Property Toevoegen" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Condition" +msgstr "Conditie" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Sequence" +msgstr "Sequentie" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Switch" +msgstr "Schakelaar" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Iterator" +msgstr "Iterator" + +#: modules/visual_script/visual_script_editor.cpp +msgid "While" +msgstr "Terwijl" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Return" +msgstr "Teruggave" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Get" +msgstr "Krijg" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Base Type:" +msgstr "Basis Type:" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Available Nodes:" +msgstr "Beschikbare Nodes:" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Select or create a function to edit graph" +msgstr "Selecteer of maak een functie om de grafiek te bewerken" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Edit Signal Arguments:" +msgstr "Signaal Argumenten Bewerken:" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Edit Variable:" +msgstr "Variabele Bewerken:" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Change" +msgstr "Wijzig" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Delete Selected" +msgstr "Geselecteerde Verwijderen" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Find Node Type" +msgstr "Vind Node Type" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Copy Nodes" +msgstr "Kopiëer Nodes" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Cut Nodes" +msgstr "Knip Nodes" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Paste Nodes" +msgstr "Plak Nodes" + +#: modules/visual_script/visual_script_flow_control.cpp +msgid "Input type not iterable: " +msgstr "Invoer type is niet iterabel: " + +#: modules/visual_script/visual_script_flow_control.cpp +msgid "Iterator became invalid" +msgstr "Iterator werd ongeldig" + +#: modules/visual_script/visual_script_flow_control.cpp +msgid "Iterator became invalid: " +msgstr "Iterator werd ongeldig: " + +#: modules/visual_script/visual_script_func_nodes.cpp +msgid "Invalid index property name." +msgstr "Ongeldige index eigenschap naam." + +#: modules/visual_script/visual_script_func_nodes.cpp +msgid "Base object is not a Node!" +msgstr "Basis object is geen Node!" + +#: modules/visual_script/visual_script_func_nodes.cpp +msgid "Path does not lead Node!" +msgstr "Pad leidt niet tot Node!" + +#: modules/visual_script/visual_script_func_nodes.cpp +msgid "Invalid index property name '%s' in node %s." +msgstr "Ongeldige index eigenschap naam '%s' in node %s." + +#: modules/visual_script/visual_script_nodes.cpp +msgid ": Invalid argument of type: " +msgstr ": Ongeldig argument van type: " + +#: modules/visual_script/visual_script_nodes.cpp +msgid ": Invalid arguments: " +msgstr ": Ongeldige argumenten: " + +#: modules/visual_script/visual_script_nodes.cpp +msgid "VariableGet not found in script: " +msgstr "VariableGet niet gevonden in script: " + +#: modules/visual_script/visual_script_nodes.cpp +msgid "VariableSet not found in script: " +msgstr "VariableSet niet gevonden in script: " + +#: modules/visual_script/visual_script_nodes.cpp +msgid "Custom node has no _step() method, can't process graph." +msgstr "" +"Zelfgemaakte node heeft geen _step() methode, kan grafiek niet verwerken." + +#: modules/visual_script/visual_script_nodes.cpp +msgid "" +"Invalid return value from _step(), must be integer (seq out), or string " +"(error)." +msgstr "" +"Ongeldige return waarde van _step(), moet een geheel getal (seq out) of " +"string (error) zijn." + +#: modules/visual_script/visual_script_nodes.cpp +msgid "just pressed" +msgstr "reeds ingedrukt" + +#: modules/visual_script/visual_script_nodes.cpp +msgid "just released" +msgstr "reeds losgelaten" + +#: platform/javascript/export/export.cpp +msgid "Run in Browser" +msgstr "" + +#: platform/javascript/export/export.cpp +msgid "Run exported HTML in the system's default browser." +msgstr "" + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not write file:\n" +msgstr "Map kon niet gemaakt worden." + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not read file:\n" +msgstr "Map kon niet gemaakt worden." + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not open template for export:\n" +msgstr "Map kon niet gemaakt worden." + +#: platform/uwp/export/export.cpp +#, fuzzy +msgid "" +"Couldn't read the certificate file. Are the path and password both correct?" +msgstr "" +"Kon het certificaat bestand niet lezen. Zijn het pad en wachtwoord beide " +"correct?" + +#: platform/uwp/export/export.cpp +msgid "Error creating the signature object." +msgstr "Error bij het maken van het signatuur object." + +#: platform/uwp/export/export.cpp +msgid "Error creating the package signature." +msgstr "Error bij het maken van het pakket signatuur." + +#: platform/uwp/export/export.cpp +msgid "" +"No export templates found.\n" +"Download and install export templates." +msgstr "" +"Geen export templates gevonden.\n" +"Download en installeer export templates." + +#: platform/uwp/export/export.cpp +msgid "Custom debug package not found." +msgstr "Custom debug pakket niet gevonden." + +#: platform/uwp/export/export.cpp +msgid "Custom release package not found." +msgstr "Custom release pakket niet gevonden." + +#: platform/uwp/export/export.cpp +msgid "Invalid unique name." +msgstr "Ongeldige unieke naam." + +#: platform/uwp/export/export.cpp +msgid "Invalid product GUID." +msgstr "Ongeldig product GUID." + +#: platform/uwp/export/export.cpp +msgid "Invalid publisher GUID." +msgstr "Ongeldige uitgever GUID." + +#: platform/uwp/export/export.cpp +msgid "Invalid background color." +msgstr "Ongeldige achtergrondkleur." + +#: platform/uwp/export/export.cpp +msgid "Invalid Store Logo image dimensions (should be 50x50)." +msgstr "Ongeldige afmetingen voor Store Logo afbeelding (moet 50×50 zijn)." + +#: platform/uwp/export/export.cpp +msgid "Invalid square 44x44 logo image dimensions (should be 44x44)." +msgstr "" +"Ongeldige afmetingen van vierkante 44×44 logo afbeelding (moet 44×44 zijn)." + +#: platform/uwp/export/export.cpp +msgid "Invalid square 71x71 logo image dimensions (should be 71x71)." +msgstr "" +"Ongeldige afmetingen van vierkante 71×71 logo afbeelding (moet 71×71 zijn)." + +#: platform/uwp/export/export.cpp +msgid "Invalid square 150x150 logo image dimensions (should be 150x150)." +msgstr "" +"Ongeldige afmetingen van vierkante 150×150 logo afbeelding (moet 150×150 " +"zijn)." + +#: platform/uwp/export/export.cpp +msgid "Invalid square 310x310 logo image dimensions (should be 310x310)." +msgstr "" +"Ongeldige afmetingen van vierkante 310×310 logo afbeelding (moet 310×310 " +"zijn)." + +#: platform/uwp/export/export.cpp +msgid "Invalid wide 310x150 logo image dimensions (should be 310x150)." +msgstr "" +"Ongeldige afmetingen van brede 310×150 logo afbeelding (moet 310×150 zijn)." + +#: platform/uwp/export/export.cpp +msgid "Invalid splash screen image dimensions (should be 620x300)." +msgstr "Ongeldige afmetingen van splash screen afbeelding (moet 620×300 zijn)." + +#: scene/2d/animated_sprite.cpp +msgid "" +"A SpriteFrames resource must be created or set in the 'Frames' property in " +"order for AnimatedSprite to display frames." +msgstr "" +"Een SpriteFrames resource moet gemaakt of gekozen worden in de 'Frames' " +"eigenschap om AnimatedSprite frames te laten tonen." + +#: scene/2d/canvas_modulate.cpp +msgid "" +"Only one visible CanvasModulate is allowed per scene (or set of instanced " +"scenes). The first created one will work, while the rest will be ignored." +msgstr "" +"Maar één zichtbare CanvasModulate is toegestaan per scene (of set van " +"geïnstantieerde scenes). De eerst gemaakte zal werken, terwijl de rest " +"genegeerd wordt." + +#: scene/2d/collision_polygon_2d.cpp +msgid "" +"CollisionPolygon2D only serves to provide a collision shape to a " +"CollisionObject2D derived node. Please only use it as a child of Area2D, " +"StaticBody2D, RigidBody2D, KinematicBody2D, etc. to give them a shape." +msgstr "" +"CollisionPolygon2D dient enkel om een bots vorm te koppelen aan een node " +"afgeleid van CollisionObject2D. Gebruik het alsjeblieft als een child van " +"Area2D, StaticBody2D, RigidBody2D, KinematicBody2D etc. om ze een vorm te " +"geven." + +#: scene/2d/collision_polygon_2d.cpp +msgid "An empty CollisionPolygon2D has no effect on collision." +msgstr "Een lege CollisionPolygon2D heeft geen effect op botsingen." + +#: scene/2d/collision_shape_2d.cpp +msgid "" +"CollisionShape2D only serves to provide a collision shape to a " +"CollisionObject2D derived node. Please only use it as a child of Area2D, " +"StaticBody2D, RigidBody2D, KinematicBody2D, etc. to give them a shape." +msgstr "" +"CollisionShape2D dient enkel om een bots vorm te koppelen aan een node " +"afgeleid van CollisionObject2D. Gebruik het alsjeblieft als een child van " +"Area2D, StaticBody2D, RigidBody2D, KinematicBody2D etc. om ze een vorm te " +"geven." + +#: scene/2d/collision_shape_2d.cpp +msgid "" +"A shape must be provided for CollisionShape2D to function. Please create a " +"shape resource for it!" +msgstr "" +"Een vorm moet voorzien worden om CollisionShape2D te laten functioneren. " +"Creëer hiervoor alsjeblieft een vorm resource!" + +#: scene/2d/light_2d.cpp +msgid "" +"A texture with the shape of the light must be supplied to the 'texture' " +"property." +msgstr "" +"Een textuur met de vorm van het licht moet worden aangeboden in de 'texture' " +"eigenschap." + +#: scene/2d/light_occluder_2d.cpp +msgid "" +"An occluder polygon must be set (or drawn) for this occluder to take effect." +msgstr "" +"Een occluder polygon moet gegeven (of getekend) worden om deze occluder te " +"laten werken." + +#: scene/2d/light_occluder_2d.cpp +msgid "The occluder polygon for this occluder is empty. Please draw a polygon!" +msgstr "" +"De occluder polygoon van deze occluder is leeg. Teken alsjeblieft een " +"polygoon!" + +#: scene/2d/navigation_polygon.cpp +msgid "" +"A NavigationPolygon resource must be set or created for this node to work. " +"Please set a property or draw a polygon." +msgstr "" +"Een NavigatorPolygon resource moet gegeven of gemaakt worden om deze node te " +"laten werken. Geef alsjeblieft een eigenschap of teken een polygoon." + +#: scene/2d/navigation_polygon.cpp +msgid "" +"NavigationPolygonInstance must be a child or grandchild to a Navigation2D " +"node. It only provides navigation data." +msgstr "" +"NavigationPolygonInstance moet een kind of kleinkind zijn van een " +"Navigation2D node. Het geeft alleen navigatie data." + +#: scene/2d/parallax_layer.cpp +msgid "" +"ParallaxLayer node only works when set as child of a ParallaxBackground node." +msgstr "" +"ParallaxLayer node werkt alleen wanneer het een kind is van een " +"ParallaxBackground node." + +#: scene/2d/particles_2d.cpp +msgid "Path property must point to a valid Particles2D node to work." +msgstr "" +"Path eigenschap moet verwijzen naar een geldige Particles2D node om te " +"werken." + +#: scene/2d/path_2d.cpp +msgid "PathFollow2D only works when set as a child of a Path2D node." +msgstr "PathFollow2D werkt alleen wanneer het een kind van een Path2D node is." + +#: scene/2d/remote_transform_2d.cpp +msgid "Path property must point to a valid Node2D node to work." +msgstr "" +"Path eigenschap moet verwijzen naar een geldige Node2D node om te werken." + +#: scene/2d/sprite.cpp +msgid "" +"Path property must point to a valid Viewport node to work. Such Viewport " +"must be set to 'render target' mode." +msgstr "" +"Path eigenschap moet verwijzen naar een geldige Viewport node om te werken. " +"Zo een Viewport moet in 'render target' modus gezet worden." + +#: scene/2d/sprite.cpp +msgid "" +"The Viewport set in the path property must be set as 'render target' in " +"order for this sprite to work." +msgstr "" +"De Viewport gegeven in de pad eigenschap moet als 'render target' ingesteld " +"zijn om deze sprite te laten werken." + +#: scene/2d/visibility_notifier_2d.cpp +msgid "" +"VisibilityEnable2D works best when used with the edited scene root directly " +"as parent." +msgstr "" +"VisibilityEnable2D werkt het beste wanneer het gebruikt wordt met de " +"aangepaste scene root direct als ouder." + +#: scene/3d/body_shape.cpp +msgid "" +"CollisionShape only serves to provide a collision shape to a CollisionObject " +"derived node. Please only use it as a child of Area, StaticBody, RigidBody, " +"KinematicBody, etc. to give them a shape." +msgstr "" +"CollisionShape dient alleen om een bots vorm te bieden aan een node die " +"afstamt van de CollisionObject node. Gebruik het alsjeblieft alleen als kind " +"van Area, StaticBody, RigidBody, KinematicBody etc. om ze een vorm te geven." + +#: scene/3d/body_shape.cpp +msgid "" +"A shape must be provided for CollisionShape to function. Please create a " +"shape resource for it!" +msgstr "" +"Een vorm moet gegeven worden om CollisionShape te laten werken. Maak " +"alsjeblieft een vorm resource voor deze!" + +#: scene/3d/collision_polygon.cpp +msgid "" +"CollisionPolygon only serves to provide a collision shape to a " +"CollisionObject derived node. Please only use it as a child of Area, " +"StaticBody, RigidBody, KinematicBody, etc. to give them a shape." +msgstr "" +"CollisionPolygon dient alleen om een bots vorm te bieden aan een node die " +"afstamt van CollisionObject. Gebruik het alsjeblieft alleen als een kind van " +"van Area, StaticBody, RigidBody, KinematicBody etc. om ze een vorm te geven." + +#: scene/3d/collision_polygon.cpp +msgid "An empty CollisionPolygon has no effect on collision." +msgstr "Een lege CollisionPolygon heeft geen effect op botsingen." + +#: scene/3d/navigation_mesh.cpp +msgid "A NavigationMesh resource must be set or created for this node to work." +msgstr "" +"Een NavigationMesh resource moet gegeven of gemaakt worden om deze node te " +"laten werken." + +#: scene/3d/navigation_mesh.cpp +msgid "" +"NavigationMeshInstance must be a child or grandchild to a Navigation node. " +"It only provides navigation data." +msgstr "" +"NavigationMeshInstance moet een kind of kleinkind zijn van een Navigation " +"node. Het biedt alleen navigatie data." + +#: scene/3d/remote_transform.cpp +msgid "Path property must point to a valid Spatial node to work." +msgstr "" +"Pad eigenschap moet verwijzen naar een geldige Spatial node om te werken." + +#: scene/3d/scenario_fx.cpp +msgid "" +"Only one WorldEnvironment is allowed per scene (or set of instanced scenes)." +msgstr "" +"Slechts één WorldEnvironment is toegestaan per scene (of set van " +"geïnstantieerde scenes)." + +#: scene/3d/sprite_3d.cpp +msgid "" +"A SpriteFrames resource must be created or set in the 'Frames' property in " +"order for AnimatedSprite3D to display frames." +msgstr "" +"Een SpriteFrames resource moet gemaakt of gegeven worden in de 'Frames' " +"eigenschap om AnimatedSprite3D frames te laten tonen." + +#: scene/gui/dialogs.cpp +msgid "Alert!" +msgstr "Alarm!" + +#: scene/gui/dialogs.cpp +msgid "Please Confirm..." +msgstr "Bevestig Alsjeblieft..." + +#: scene/gui/file_dialog.cpp +msgid "Open a File" +msgstr "Open een Bestand" + +#: scene/gui/file_dialog.cpp +msgid "Open File(s)" +msgstr "Open Bestand(en)" + +#: scene/gui/file_dialog.cpp +msgid "Open a Directory" +msgstr "Open een Map" + +#: scene/gui/file_dialog.cpp +msgid "Open a File or Directory" +msgstr "Open een Bestand of Map" + +#: scene/gui/input_action.cpp +msgid "Ctrl+" +msgstr "Ctrl+" + +#: scene/gui/popup.cpp +msgid "" +"Popups will hide by default unless you call popup() or any of the popup*() " +"functions. Making them visible for editing is fine though, but they will " +"hide upon running." +msgstr "" +"Standaard verbergen pop-ups zich tenzij je popup() aanroept of één van de " +"popup*() functies. Ze zichtbaar maken om te bewerken is prima, maar ze " +"zullen zich verbergen bij het uitvoeren." + +#: scene/gui/scroll_container.cpp +msgid "" +"ScrollContainer is intended to work with a single child control.\n" +"Use a container as child (VBox,HBox,etc), or a Control and set the custom " +"minimum size manually." +msgstr "" + +#: scene/main/viewport.cpp +msgid "" +"This viewport is not set as render target. If you intend for it to display " +"its contents directly to the screen, make it a child of a Control so it can " +"obtain a size. Otherwise, make it a RenderTarget and assign its internal " +"texture to some node for display." +msgstr "" +"Deze viewport is niet ingesteld als render target. Maak het een kind van een " +"Control zodat het een grootte kan ontvangen, als je de bedoeling hebt zijn " +"inhoud direct op het scherm te weergeven. Anders, maak er een RenderTarget " +"van en wijs zijn interne texture toe aan een node om te tonen." + +#~ msgid "" +#~ "A SampleLibrary resource must be created or set in the 'samples' property " +#~ "in order for SamplePlayer to play sound." +#~ msgstr "" +#~ "Een SampleLibrary resource moet gemaakt of gegeven worden in de 'samples' " +#~ "eigenschap om SamplePlayer geluid af te laten spelen." + +#~ msgid "" +#~ "A SampleLibrary resource must be created or set in the 'samples' property " +#~ "in order for SpatialSamplePlayer to play sound." +#~ msgstr "" +#~ "Een SampleLibrary resource moet gemaakt of gegeven worden in de 'samples' " +#~ "eigenschap om SpatialSamplePlayer geluid te laten afspelen." + +#, fuzzy +#~ msgid "Replaced %d Ocurrence(s)." +#~ msgstr "%d Voorgekomen Waarde(s) Vervangen." diff --git a/editor/translations/pl.po b/editor/translations/pl.po index 06a0ca2386..2149564c42 100644 --- a/editor/translations/pl.po +++ b/editor/translations/pl.po @@ -712,7 +712,7 @@ msgstr "" #: editor/dependency_editor.cpp msgid "Remove selected files from the project? (no undo)" -msgstr "Usunąć wybrane pliki z projektu? (Nie można tego cofnąć)" +msgstr "Usunąć wybrane pliki z projektu? (Nie można tego cofnąć)" #: editor/dependency_editor.cpp msgid "Error loading:" @@ -928,7 +928,7 @@ msgstr "Zapisywanie Pliku:" msgid "Packing" msgstr "Pakowanie" -#: editor/editor_export.cpp +#: editor/editor_export.cpp platform/javascript/export/export.cpp msgid "Template file not found:\n" msgstr "" @@ -2756,8 +2756,9 @@ msgid "Compress" msgstr "Skompresuj" #: editor/io_plugins/editor_translation_import_plugin.cpp +#, fuzzy msgid "Add to Project (godot.cfg)" -msgstr "Dodaj do projektu (godot.cfg)" +msgstr "Dodaj do projektu (engine.cfg)" #: editor/io_plugins/editor_translation_import_plugin.cpp msgid "Import Languages:" @@ -3473,10 +3474,12 @@ msgid "Set Handle" msgstr "" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp msgid "Add/Remove Color Ramp Point" msgstr "" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp #: editor/plugins/shader_graph_editor_plugin.cpp msgid "Modify Color Ramp" msgstr "" @@ -3511,6 +3514,11 @@ msgstr "Import ze sceny" msgid "Update from Scene" msgstr "Aktualizuj ze sceny" +#: editor/plugins/curve_editor_plugin.cpp +#, fuzzy +msgid "Modify Curve" +msgstr "Zamknij krzywą" + #: editor/plugins/item_list_editor_plugin.cpp msgid "Item %d" msgstr "Element %d" @@ -3816,6 +3824,10 @@ msgid "Node does not contain geometry (faces)." msgstr "" #: editor/plugins/particles_editor_plugin.cpp +msgid "A processor material of type 'ParticlesMaterial' is required." +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp msgid "Faces contain no area!" msgstr "" @@ -3828,11 +3840,11 @@ msgid "Generate AABB" msgstr "Generuj AABB" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Mesh" +msgid "Create Emission Points From Mesh" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Node" +msgid "Create Emission Points From Node" msgstr "" #: editor/plugins/particles_editor_plugin.cpp @@ -3844,21 +3856,26 @@ msgid "Create Emitter" msgstr "Utwórz Emiter" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Positions:" +msgid "Emission Points:" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Fill:" -msgstr "" +#, fuzzy +msgid "Surface Points" +msgstr "Powierzchnia %d" #: editor/plugins/particles_editor_plugin.cpp -msgid "Surface" -msgstr "Powierzchnia" +msgid "Surface Points+Normal (Directed)" +msgstr "" #: editor/plugins/particles_editor_plugin.cpp msgid "Volume" msgstr "Głośność" +#: editor/plugins/particles_editor_plugin.cpp +msgid "Emission Source: " +msgstr "" + #: editor/plugins/path_2d_editor_plugin.cpp msgid "Remove Point from Curve" msgstr "" @@ -5177,12 +5194,14 @@ msgid "Invalid project path, the path must exist!" msgstr "Niepoprawna ścieżka projektu, ścieżka musi istnieć!" #: editor/project_manager.cpp +#, fuzzy msgid "Invalid project path, godot.cfg must not exist." -msgstr "Niepoprawna ścieżka projektu, godot.cfg nie może istnieć." +msgstr "Niepoprawna ścieżka projektu, engine.cfg nie może istnieć." #: editor/project_manager.cpp +#, fuzzy msgid "Invalid project path, godot.cfg must exist." -msgstr "Niepoprawna ścieżka projektu, godot.cfg musi istnieć." +msgstr "Niepoprawna ścieżka projektu, engine.cfg musi istnieć." #: editor/project_manager.cpp msgid "Imported Project" @@ -5193,8 +5212,9 @@ msgid "Invalid project path (changed anything?)." msgstr "Niepoprawna ścieżka projektu (zmienić cokolwiek?)." #: editor/project_manager.cpp +#, fuzzy msgid "Couldn't create godot.cfg in project path." -msgstr "Nie można było utworzyć godot.cfg w ścieżce projektu." +msgstr "Nie można było utworzyć engine.cfg w ścieżce projektu." #: editor/project_manager.cpp msgid "The following files failed extraction from package:" @@ -5476,8 +5496,9 @@ msgid "Remove Resource Remap Option" msgstr "" #: editor/project_settings.cpp +#, fuzzy msgid "Project Settings (godot.cfg)" -msgstr "Ustawienia projektu (godot.cfg)" +msgstr "Ustawienia projektu (engine.cfg)" #: editor/project_settings.cpp editor/settings_config_dialog.cpp msgid "General" @@ -6130,7 +6151,7 @@ msgstr "Skróty" #: editor/spatial_editor_gizmos.cpp msgid "Change Light Radius" -msgstr "Zmień promień światła" +msgstr "Zmień promień światła" #: editor/spatial_editor_gizmos.cpp msgid "Change Camera FOV" @@ -6158,7 +6179,7 @@ msgstr "Zmień wysokośc Capsule Shape" #: editor/spatial_editor_gizmos.cpp msgid "Change Ray Shape Length" -msgstr "Zmień długość Ray Shape" +msgstr "Zmień długość Ray Shape" #: editor/spatial_editor_gizmos.cpp msgid "Change Notifier Extents" @@ -6498,6 +6519,30 @@ msgstr "" msgid "just released" msgstr "" +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Run in Browser" +msgstr "Szukaj" + +#: platform/javascript/export/export.cpp +msgid "Run exported HTML in the system's default browser." +msgstr "" + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not write file:\n" +msgstr "Nie można utworzyć katalogu." + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not read file:\n" +msgstr "Nie można utworzyć katalogu." + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not open template for export:\n" +msgstr "Nie można utworzyć katalogu." + #: platform/uwp/export/export.cpp msgid "" "Couldn't read the certificate file. Are the path and password both correct?" @@ -6827,6 +6872,9 @@ msgstr "" "otrzymał jakiś rozmiar. W przeciwnym wypadku ustawi opcję RenderTarget i " "przyporządkuj jego teksturę dla któregoś węzła." +#~ msgid "Surface" +#~ msgstr "Powierzchnia" + #~ msgid "" #~ "A SampleLibrary resource must be created or set in the 'samples' property " #~ "in order for SamplePlayer to play sound." diff --git a/editor/translations/pr.po b/editor/translations/pr.po index 0b8ecb0bda..3a8f795eb9 100644 --- a/editor/translations/pr.po +++ b/editor/translations/pr.po @@ -2,12 +2,12 @@ # Copyright (C) 2016-2017 Juan Linietsky, Ariel Manzur and the Godot community # This file is distributed under the same license as the Godot source code. # -# Zion Nimchuk <zionnimchuk@gmail.com>, 2016. +# Zion Nimchuk <zionnimchuk@gmail.com>, 2016-2017. # msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" -"PO-Revision-Date: 2016-11-14 19:48+0000\n" +"PO-Revision-Date: 2017-03-24 19:48+0000\n" "Last-Translator: Zion Nimchuk <zionnimchuk@gmail.com>\n" "Language-Team: Pirate <https://hosted.weblate.org/projects/godot-engine/" "godot/pr/>\n" @@ -15,7 +15,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8-bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 2.10-dev\n" +"X-Generator: Weblate 2.12\n" #: editor/animation_editor.cpp msgid "Disabled" @@ -408,7 +408,7 @@ msgstr "" #: editor/call_dialog.cpp modules/visual_script/visual_script_editor.cpp msgid "Call" -msgstr "" +msgstr "Call" #: editor/call_dialog.cpp editor/connections_dialog.cpp #: editor/export_template_manager.cpp @@ -422,7 +422,7 @@ msgstr "" #: editor/settings_config_dialog.cpp #: modules/visual_script/visual_script_editor.cpp msgid "Close" -msgstr "" +msgstr "Close" #: editor/call_dialog.cpp msgid "Method List:" @@ -910,7 +910,7 @@ msgstr "" msgid "Packing" msgstr "" -#: editor/editor_export.cpp +#: editor/editor_export.cpp platform/javascript/export/export.cpp msgid "Template file not found:\n" msgstr "" @@ -1066,7 +1066,7 @@ msgstr "" #: editor/editor_help.cpp modules/visual_script/visual_script_editor.cpp msgid "Members:" -msgstr "" +msgstr "th' Members:" #: editor/editor_help.cpp msgid "Public Methods:" @@ -1920,8 +1920,9 @@ msgid "No version.txt found inside templates." msgstr "" #: editor/export_template_manager.cpp +#, fuzzy msgid "Error creating path for templates:\n" -msgstr "" +msgstr "Blimey! I can't make th' signature object!" #: editor/export_template_manager.cpp msgid "Extracting Export Templates" @@ -3190,7 +3191,7 @@ msgstr "" #: editor/plugins/shader_editor_plugin.cpp editor/project_manager.cpp #: modules/visual_script/visual_script_editor.cpp msgid "Edit" -msgstr "" +msgstr "Edit" #: editor/plugins/canvas_item_editor_plugin.cpp #: editor/plugins/spatial_editor_plugin.cpp @@ -3383,10 +3384,12 @@ msgid "Set Handle" msgstr "" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp msgid "Add/Remove Color Ramp Point" msgstr "" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp #: editor/plugins/shader_graph_editor_plugin.cpp msgid "Modify Color Ramp" msgstr "" @@ -3421,6 +3424,10 @@ msgstr "" msgid "Update from Scene" msgstr "" +#: editor/plugins/curve_editor_plugin.cpp +msgid "Modify Curve" +msgstr "" + #: editor/plugins/item_list_editor_plugin.cpp msgid "Item %d" msgstr "" @@ -3722,6 +3729,10 @@ msgid "Node does not contain geometry (faces)." msgstr "" #: editor/plugins/particles_editor_plugin.cpp +msgid "A processor material of type 'ParticlesMaterial' is required." +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp msgid "Faces contain no area!" msgstr "" @@ -3734,11 +3745,11 @@ msgid "Generate AABB" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Mesh" +msgid "Create Emission Points From Mesh" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Node" +msgid "Create Emission Points From Node" msgstr "" #: editor/plugins/particles_editor_plugin.cpp @@ -3750,21 +3761,25 @@ msgid "Create Emitter" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Positions:" +msgid "Emission Points:" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Fill:" +msgid "Surface Points" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Surface" +msgid "Surface Points+Normal (Directed)" msgstr "" #: editor/plugins/particles_editor_plugin.cpp msgid "Volume" msgstr "" +#: editor/plugins/particles_editor_plugin.cpp +msgid "Emission Source: " +msgstr "" + #: editor/plugins/path_2d_editor_plugin.cpp msgid "Remove Point from Curve" msgstr "" @@ -4220,7 +4235,7 @@ msgstr "" #: editor/plugins/script_text_editor.cpp #: modules/visual_script/visual_script_editor.cpp msgid "Toggle Breakpoint" -msgstr "" +msgstr "Toggle ye Breakpoint" #: editor/plugins/script_text_editor.cpp msgid "Remove All Breakpoints" @@ -5491,8 +5506,9 @@ msgid "Couldn't load image" msgstr "" #: editor/property_editor.cpp +#, fuzzy msgid "Pick a Node" -msgstr "" +msgstr "Paste yer Node" #: editor/property_editor.cpp msgid "Bit %d, val %d." @@ -5504,7 +5520,7 @@ msgstr "" #: editor/property_editor.cpp modules/visual_script/visual_script_editor.cpp msgid "Set" -msgstr "" +msgstr "Set" #: editor/property_editor.cpp msgid "Properties:" @@ -5715,8 +5731,9 @@ msgid "Save Branch as Scene" msgstr "" #: editor/scene_tree_dock.cpp +#, fuzzy msgid "Copy Node Path" -msgstr "" +msgstr "Forge yer Node!" #: editor/scene_tree_dock.cpp msgid "Delete (No Confirm)" @@ -6197,251 +6214,277 @@ msgstr "Add Node" #: modules/visual_script/visual_script_editor.cpp msgid "Hold Meta to drop a Getter. Hold Shift to drop a generic signature." msgstr "" -"Smash yer Meta t' sink yer Getter. Smash yer Shift t' sink a generic " +"Smash yer Meta key t' sink yer Getter. Smash yer Shift t' sink a generic " "signature." #: modules/visual_script/visual_script_editor.cpp msgid "Hold Ctrl to drop a Getter. Hold Shift to drop a generic signature." msgstr "" -"Smash yer Ctrl t' sink yer Getter. Smash yer Shift t' sink a generic " +"Smash yer Ctrl key t' sink yer Getter. Smash yer Shift t' sink a generic " "signature." #: modules/visual_script/visual_script_editor.cpp msgid "Hold Meta to drop a simple reference to the node." -msgstr "" +msgstr "Smash yer Meta key t' sink a naked reference t' th' node." #: modules/visual_script/visual_script_editor.cpp msgid "Hold Ctrl to drop a simple reference to the node." -msgstr "" +msgstr "Smash yer Ctrl key t' sink a naked reference t' th' node." #: modules/visual_script/visual_script_editor.cpp msgid "Hold Meta to drop a Variable Setter." -msgstr "" +msgstr "Smash yer Meta key t' sink a Variable Setter." #: modules/visual_script/visual_script_editor.cpp msgid "Hold Ctrl to drop a Variable Setter." -msgstr "" +msgstr "Smash yer Ctrl key t' sink a Variable Setter." #: modules/visual_script/visual_script_editor.cpp msgid "Add Preload Node" -msgstr "" +msgstr "Add yer Preload Node" #: modules/visual_script/visual_script_editor.cpp msgid "Add Node(s) From Tree" -msgstr "" +msgstr "Add Node(s) From yer Tree" #: modules/visual_script/visual_script_editor.cpp msgid "Add Getter Property" -msgstr "" +msgstr "Add yer Getter Property" #: modules/visual_script/visual_script_editor.cpp msgid "Add Setter Property" -msgstr "" +msgstr "Add yer Setter Property" #: modules/visual_script/visual_script_editor.cpp msgid "Condition" -msgstr "" +msgstr "Condition" #: modules/visual_script/visual_script_editor.cpp msgid "Sequence" -msgstr "" +msgstr "Sequence" #: modules/visual_script/visual_script_editor.cpp msgid "Switch" -msgstr "" +msgstr "Switch" #: modules/visual_script/visual_script_editor.cpp msgid "Iterator" -msgstr "" +msgstr "Iterator" #: modules/visual_script/visual_script_editor.cpp msgid "While" -msgstr "" +msgstr "While" #: modules/visual_script/visual_script_editor.cpp msgid "Return" -msgstr "" +msgstr "Return" #: modules/visual_script/visual_script_editor.cpp msgid "Get" -msgstr "" +msgstr "Get" #: modules/visual_script/visual_script_editor.cpp msgid "Base Type:" -msgstr "" +msgstr "th' Base Type:" #: modules/visual_script/visual_script_editor.cpp msgid "Available Nodes:" -msgstr "" +msgstr "yer Nodes doing nothin':" #: modules/visual_script/visual_script_editor.cpp msgid "Select or create a function to edit graph" -msgstr "" +msgstr "Grab or make yer function t' edit ye graph" #: modules/visual_script/visual_script_editor.cpp msgid "Edit Signal Arguments:" -msgstr "" +msgstr "Edit ye Signal Arguments:" #: modules/visual_script/visual_script_editor.cpp msgid "Edit Variable:" -msgstr "" +msgstr "Edit yer Variable:" #: modules/visual_script/visual_script_editor.cpp msgid "Change" -msgstr "" +msgstr "Change" #: modules/visual_script/visual_script_editor.cpp msgid "Delete Selected" -msgstr "" +msgstr "Yar, Blow th' Selected Down!" #: modules/visual_script/visual_script_editor.cpp msgid "Find Node Type" -msgstr "" +msgstr "Find ye Node Type" #: modules/visual_script/visual_script_editor.cpp msgid "Copy Nodes" -msgstr "" +msgstr "Forge yer Node!" #: modules/visual_script/visual_script_editor.cpp msgid "Cut Nodes" -msgstr "" +msgstr "Slit th' Node" #: modules/visual_script/visual_script_editor.cpp msgid "Paste Nodes" -msgstr "" +msgstr "Paste yer Node" #: modules/visual_script/visual_script_flow_control.cpp msgid "Input type not iterable: " -msgstr "" +msgstr "Yar! Yer input aint iterable: " #: modules/visual_script/visual_script_flow_control.cpp msgid "Iterator became invalid" -msgstr "" +msgstr "Yer Iterator be no good" #: modules/visual_script/visual_script_flow_control.cpp msgid "Iterator became invalid: " -msgstr "" +msgstr "Yer Iterator be no good: " #: modules/visual_script/visual_script_func_nodes.cpp msgid "Invalid index property name." -msgstr "" +msgstr "Yer index property name be thrown overboard!" #: modules/visual_script/visual_script_func_nodes.cpp msgid "Base object is not a Node!" -msgstr "" +msgstr "Yer Base object aint' a Node!" #: modules/visual_script/visual_script_func_nodes.cpp msgid "Path does not lead Node!" -msgstr "" +msgstr "There be no Node at ye path's end!" #: modules/visual_script/visual_script_func_nodes.cpp msgid "Invalid index property name '%s' in node %s." -msgstr "" +msgstr "Yer index property name '%s' in node %s be walkin' th' plank!" #: modules/visual_script/visual_script_nodes.cpp msgid ": Invalid argument of type: " -msgstr "" +msgstr ": Evil argument of th' type: " #: modules/visual_script/visual_script_nodes.cpp msgid ": Invalid arguments: " -msgstr "" +msgstr ": Evil arguments: " #: modules/visual_script/visual_script_nodes.cpp msgid "VariableGet not found in script: " -msgstr "" +msgstr "VariableGet be in davy jones locker! Not in th' script: " #: modules/visual_script/visual_script_nodes.cpp msgid "VariableSet not found in script: " -msgstr "" +msgstr "VariableSet be in davy jones locker! Not in th' script: " #: modules/visual_script/visual_script_nodes.cpp msgid "Custom node has no _step() method, can't process graph." -msgstr "" +msgstr "Yer fancy node got no _step() method, we can't get th' graph." #: modules/visual_script/visual_script_nodes.cpp msgid "" "Invalid return value from _step(), must be integer (seq out), or string " "(error)." msgstr "" +"Yer return value from _step() be no good! She must be th' integer (seq out) " +"or th' string (error)." #: modules/visual_script/visual_script_nodes.cpp msgid "just pressed" -msgstr "" +msgstr "just smashed" #: modules/visual_script/visual_script_nodes.cpp msgid "just released" +msgstr "just released" + +#: platform/javascript/export/export.cpp +msgid "Run in Browser" +msgstr "" + +#: platform/javascript/export/export.cpp +msgid "Run exported HTML in the system's default browser." +msgstr "" + +#: platform/javascript/export/export.cpp +msgid "Could not write file:\n" +msgstr "" + +#: platform/javascript/export/export.cpp +msgid "Could not read file:\n" +msgstr "" + +#: platform/javascript/export/export.cpp +msgid "Could not open template for export:\n" msgstr "" #: platform/uwp/export/export.cpp +#, fuzzy msgid "" "Couldn't read the certificate file. Are the path and password both correct?" msgstr "" +"Blimey! I can't read th' certificate file! Are yer path n' password trusty?" #: platform/uwp/export/export.cpp msgid "Error creating the signature object." -msgstr "" +msgstr "Blimey! I can't make th' signature object!" #: platform/uwp/export/export.cpp msgid "Error creating the package signature." -msgstr "" +msgstr "Blimey! I can't create th' package signature." #: platform/uwp/export/export.cpp msgid "" "No export templates found.\n" "Download and install export templates." msgstr "" +"Ye got no export templates!\n" +"Download and install yer export templates." #: platform/uwp/export/export.cpp msgid "Custom debug package not found." -msgstr "" +msgstr "Yer fancy debug package be nowhere." #: platform/uwp/export/export.cpp msgid "Custom release package not found." -msgstr "" +msgstr "Yer fancy release package be nowhere." #: platform/uwp/export/export.cpp msgid "Invalid unique name." -msgstr "" +msgstr "Yer unique name be evil." #: platform/uwp/export/export.cpp msgid "Invalid product GUID." -msgstr "" +msgstr "Yer product GUID be evil." #: platform/uwp/export/export.cpp msgid "Invalid publisher GUID." -msgstr "" +msgstr "Yer publisher GUID be evil! Walk th' plank!" #: platform/uwp/export/export.cpp msgid "Invalid background color." -msgstr "" +msgstr "Yer background color be evil!" #: platform/uwp/export/export.cpp msgid "Invalid Store Logo image dimensions (should be 50x50)." -msgstr "" +msgstr "Yer Store Logo got th' wrong dimensions! She should be 50x50 I reckon." #: platform/uwp/export/export.cpp msgid "Invalid square 44x44 logo image dimensions (should be 44x44)." -msgstr "" +msgstr "Yer square 44x44 logo image dimensions aint' 44x44!" #: platform/uwp/export/export.cpp msgid "Invalid square 71x71 logo image dimensions (should be 71x71)." -msgstr "" +msgstr "Yer square 71x71 logo image dimensions aint' 71x71!" #: platform/uwp/export/export.cpp msgid "Invalid square 150x150 logo image dimensions (should be 150x150)." -msgstr "" +msgstr "Yer square 150x150 logo image dimensions aint' 150x150!" #: platform/uwp/export/export.cpp msgid "Invalid square 310x310 logo image dimensions (should be 310x310)." -msgstr "" +msgstr "Yer square 310x310 logo image dimensions aint' 310x310!" #: platform/uwp/export/export.cpp msgid "Invalid wide 310x150 logo image dimensions (should be 310x150)." -msgstr "" +msgstr "Yer wide 310x150 logo image dimensions aint' 310x150!" #: platform/uwp/export/export.cpp msgid "Invalid splash screen image dimensions (should be 620x300)." -msgstr "" +msgstr "Yer splash screen image dimensions aint' 620x300!" #: scene/2d/animated_sprite.cpp msgid "" diff --git a/editor/translations/pt_BR.po b/editor/translations/pt_BR.po index abb688da42..6962fb5db7 100644 --- a/editor/translations/pt_BR.po +++ b/editor/translations/pt_BR.po @@ -2,17 +2,19 @@ # Copyright (C) 2016-2017 Juan Linietsky, Ariel Manzur and the Godot community # This file is distributed under the same license as the Godot source code. # +# Allyson Souza <allyson_as@outlook.com>, 2017. # António Sarmento <antonio.luis.sarmento@gmail.com>, 2016. # George Marques <george@gmarqu.es>, 2016. # Joaquim Ferreira <joaquimferreira1996@bol.com.br>, 2016. +# jonathan railarem <railarem@gmail.com>, 2017. # Mailson Silva Marins <mailsons335@gmail.com>, 2016. # msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "POT-Creation-Date: 2016-05-30\n" -"PO-Revision-Date: 2016-09-02 21:07+0000\n" -"Last-Translator: Mailson Silva Marins <mailsons335@gmail.com>\n" +"PO-Revision-Date: 2017-03-27 19:34+0000\n" +"Last-Translator: jonathan railarem <railarem@gmail.com>\n" "Language-Team: Portuguese (Brazil) <https://hosted.weblate.org/projects/" "godot-engine/godot/pt_BR/>\n" "Language: pt_BR\n" @@ -20,7 +22,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n > 1;\n" -"X-Generator: Weblate 2.8\n" +"X-Generator: Weblate 2.13-dev\n" #: editor/animation_editor.cpp msgid "Disabled" @@ -928,7 +930,7 @@ msgstr "Armazenando Arquivo:" msgid "Packing" msgstr "Empacotando" -#: editor/editor_export.cpp +#: editor/editor_export.cpp platform/javascript/export/export.cpp msgid "Template file not found:\n" msgstr "" @@ -2757,8 +2759,9 @@ msgid "Compress" msgstr "Comprimir" #: editor/io_plugins/editor_translation_import_plugin.cpp +#, fuzzy msgid "Add to Project (godot.cfg)" -msgstr "Adicionar ao Projeto (godot.cfg)" +msgstr "Adicionar ao Projeto (engine.cfg)" #: editor/io_plugins/editor_translation_import_plugin.cpp msgid "Import Languages:" @@ -3481,10 +3484,12 @@ msgid "Set Handle" msgstr "Definir Manipulador" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp msgid "Add/Remove Color Ramp Point" msgstr "Adicionar/Remover Ponto na Curva de Cor" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp #: editor/plugins/shader_graph_editor_plugin.cpp msgid "Modify Color Ramp" msgstr "Modificar Curva de Cores" @@ -3519,6 +3524,11 @@ msgstr "Importar da Cena" msgid "Update from Scene" msgstr "Atualizar a partir de Cena" +#: editor/plugins/curve_editor_plugin.cpp +#, fuzzy +msgid "Modify Curve" +msgstr "Modificar Curve Map" + #: editor/plugins/item_list_editor_plugin.cpp msgid "Item %d" msgstr "Item %d" @@ -3825,6 +3835,10 @@ msgid "Node does not contain geometry (faces)." msgstr "O nó não contém geometria (faces)." #: editor/plugins/particles_editor_plugin.cpp +msgid "A processor material of type 'ParticlesMaterial' is required." +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp msgid "Faces contain no area!" msgstr "As faces não têm área!" @@ -3837,11 +3851,13 @@ msgid "Generate AABB" msgstr "Gerar AABB" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Mesh" +#, fuzzy +msgid "Create Emission Points From Mesh" msgstr "Criar Emissor a partir de Mesh" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Node" +#, fuzzy +msgid "Create Emission Points From Node" msgstr "Criar Emissor a partir de Nó" #: editor/plugins/particles_editor_plugin.cpp @@ -3853,21 +3869,28 @@ msgid "Create Emitter" msgstr "Criar Emissor" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Positions:" +#, fuzzy +msgid "Emission Points:" msgstr "Posições de Emissão:" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Fill:" -msgstr "Preenchimento de Emissão:" +#, fuzzy +msgid "Surface Points" +msgstr "Superfície %d" #: editor/plugins/particles_editor_plugin.cpp -msgid "Surface" -msgstr "Superfície" +msgid "Surface Points+Normal (Directed)" +msgstr "" #: editor/plugins/particles_editor_plugin.cpp msgid "Volume" msgstr "Volume" +#: editor/plugins/particles_editor_plugin.cpp +#, fuzzy +msgid "Emission Source: " +msgstr "Preenchimento de Emissão:" + #: editor/plugins/path_2d_editor_plugin.cpp msgid "Remove Point from Curve" msgstr "Remover Ponto da Curva" @@ -5199,12 +5222,14 @@ msgid "Invalid project path, the path must exist!" msgstr "Caminho de projeto inválido, o caminho deve existir!" #: editor/project_manager.cpp +#, fuzzy msgid "Invalid project path, godot.cfg must not exist." -msgstr "Caminho de projeto inválido, godot.cfg não deve existir." +msgstr "Caminho de projeto inválido, engine.cfg não deve existir." #: editor/project_manager.cpp +#, fuzzy msgid "Invalid project path, godot.cfg must exist." -msgstr "Caminho de projeto inválido, godot.cfg deve existir." +msgstr "Caminho de projeto inválido, engine.cfg deve existir." #: editor/project_manager.cpp msgid "Imported Project" @@ -5215,8 +5240,9 @@ msgid "Invalid project path (changed anything?)." msgstr "Caminho de projeto inválido (mudou alguma coisa?)." #: editor/project_manager.cpp +#, fuzzy msgid "Couldn't create godot.cfg in project path." -msgstr "Não se pôde criar godot.cfg no caminho do projeto." +msgstr "Não se pôde criar engine.cfg no caminho do projeto." #: editor/project_manager.cpp msgid "The following files failed extraction from package:" @@ -5501,8 +5527,9 @@ msgid "Remove Resource Remap Option" msgstr "Remover Opção de Remapeamento de Recurso" #: editor/project_settings.cpp +#, fuzzy msgid "Project Settings (godot.cfg)" -msgstr "Configurações do Projeto (godot.cfg)" +msgstr "Configurações do Projeto (engine.cfg)" #: editor/project_settings.cpp editor/settings_config_dialog.cpp msgid "General" @@ -6200,7 +6227,7 @@ msgstr "Alterar a Extensão do Notificador" #: modules/gdscript/gd_functions.cpp #: modules/visual_script/visual_script_builtin_funcs.cpp msgid "Invalid type argument to convert(), use TYPE_* constants." -msgstr "Argumento de tipo inválido para converter(), use constantes TYPE_*." +msgstr "Argumento de tipo inválido para convert(), use constantes TYPE_*." #: modules/gdscript/gd_functions.cpp #: modules/visual_script/visual_script_builtin_funcs.cpp @@ -6217,11 +6244,11 @@ msgstr "Não é um script com uma instância" #: modules/gdscript/gd_functions.cpp msgid "Not based on a script" -msgstr "Não é baseado num script" +msgstr "Não é baseado em um script" #: modules/gdscript/gd_functions.cpp msgid "Not based on a resource file" -msgstr "Não é baseado num arquivo de recurso" +msgstr "Não é baseado em um arquivo de recurso" #: modules/gdscript/gd_functions.cpp msgid "Invalid instance dictionary format (missing @path)" @@ -6230,8 +6257,8 @@ msgstr "Formato de dicionário de instância inválido (faltando @path)" #: modules/gdscript/gd_functions.cpp msgid "Invalid instance dictionary format (can't load script at @path)" msgstr "" -"Formato de dicionário de instância inválido (não se pôde carregar o script " -"em @path)" +"Formato de dicionário de instância inválido (não foi possível carregar o " +"script em @path)" #: modules/gdscript/gd_functions.cpp msgid "Invalid instance dictionary format (invalid script at @path)" @@ -6261,7 +6288,7 @@ msgstr "" #: modules/visual_script/visual_script.cpp msgid "Node returned an invalid sequence output: " -msgstr "" +msgstr "O nó retornou uma saída de sequência inválida: " #: modules/visual_script/visual_script.cpp msgid "Found sequence bit but not the node in the stack, report bug!" @@ -6281,11 +6308,11 @@ msgstr "Variáveis:" #: modules/visual_script/visual_script_editor.cpp msgid "Name is not a valid identifier:" -msgstr "" +msgstr "O nome não é um identificador valido:" #: modules/visual_script/visual_script_editor.cpp msgid "Name already in use by another func/var/signal:" -msgstr "" +msgstr "Nome já utilizado por outra func/var/sinal:" #: modules/visual_script/visual_script_editor.cpp msgid "Rename Function" @@ -6293,7 +6320,7 @@ msgstr "Renomear Função" #: modules/visual_script/visual_script_editor.cpp msgid "Rename Variable" -msgstr "renomeie variável" +msgstr "Renomear Variável" #: modules/visual_script/visual_script_editor.cpp msgid "Rename Signal" @@ -6334,7 +6361,7 @@ msgstr "Editando Sinal:" #: modules/visual_script/visual_script_editor.cpp #, fuzzy msgid "Change Expression" -msgstr "Alterar Tipo" +msgstr "Alterar Expressão" #: modules/visual_script/visual_script_editor.cpp msgid "Add Node" @@ -6343,76 +6370,76 @@ msgstr "Adicionar Nó" #: modules/visual_script/visual_script_editor.cpp msgid "Hold Meta to drop a Getter. Hold Shift to drop a generic signature." msgstr "" +"Segure Meta para aplicar um Getter. Segure Shift para aplicar uma assinatura " +"genérica." #: modules/visual_script/visual_script_editor.cpp msgid "Hold Ctrl to drop a Getter. Hold Shift to drop a generic signature." msgstr "" +"Segure Ctrl para aplicar um Getter. Segure Shift para aplicar uma assinatura " +"genérica." #: modules/visual_script/visual_script_editor.cpp msgid "Hold Meta to drop a simple reference to the node." -msgstr "" +msgstr "Segure Meta para aplicar uma referência simples ao nó." #: modules/visual_script/visual_script_editor.cpp msgid "Hold Ctrl to drop a simple reference to the node." -msgstr "" +msgstr "Segure Ctrl para aplicar uma referência ao nó." #: modules/visual_script/visual_script_editor.cpp msgid "Hold Meta to drop a Variable Setter." -msgstr "" +msgstr "Segure Meta para aplicar um Setter de Variável." #: modules/visual_script/visual_script_editor.cpp msgid "Hold Ctrl to drop a Variable Setter." -msgstr "" +msgstr "Segure Ctrl para aplicar um Setter de Variável." #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Add Preload Node" -msgstr "Adicionar Nó Filho" +msgstr "Adicionar Nó de Pré-carregamento" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Add Node(s) From Tree" -msgstr "Nó a Partir de Cena" +msgstr "Adicionar Nó(s) a partir de árvore" #: modules/visual_script/visual_script_editor.cpp msgid "Add Getter Property" -msgstr "" +msgstr "Adicionar Getter de Propriedade" #: modules/visual_script/visual_script_editor.cpp msgid "Add Setter Property" -msgstr "" +msgstr "Adicionar Setter de Propriedade" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Condition" -msgstr "Copiar Animação" +msgstr "Condição" #: modules/visual_script/visual_script_editor.cpp msgid "Sequence" -msgstr "" +msgstr "Sequência" #: modules/visual_script/visual_script_editor.cpp #, fuzzy msgid "Switch" -msgstr "Pitch" +msgstr "Mudar" #: modules/visual_script/visual_script_editor.cpp msgid "Iterator" -msgstr "" +msgstr "Iterador" #: modules/visual_script/visual_script_editor.cpp msgid "While" -msgstr "" +msgstr "Enquanto" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Return" -msgstr "Retornar:" +msgstr "Retornar" #: modules/visual_script/visual_script_editor.cpp #, fuzzy msgid "Get" -msgstr "Definir" +msgstr "Obter" #: modules/visual_script/visual_script_editor.cpp msgid "Base Type:" @@ -6424,7 +6451,7 @@ msgstr "Nós Disponíveis:" #: modules/visual_script/visual_script_editor.cpp msgid "Select or create a function to edit graph" -msgstr "" +msgstr "Selecione ou crie uma função para editar o grafo" #: modules/visual_script/visual_script_editor.cpp msgid "Edit Signal Arguments:" @@ -6443,41 +6470,36 @@ msgid "Delete Selected" msgstr "Excluir Selecionados" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Find Node Type" msgstr "Localizar Tipo de Nó" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Copy Nodes" -msgstr "Copiar Pose" +msgstr "Copiar Nós" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Cut Nodes" -msgstr "Criar Nó" +msgstr "Recortar Nós" #: modules/visual_script/visual_script_editor.cpp -#, fuzzy msgid "Paste Nodes" -msgstr "Colar Pose" +msgstr "Colar Nós" #: modules/visual_script/visual_script_flow_control.cpp msgid "Input type not iterable: " -msgstr "" +msgstr "Tipo de entrada não iterável: " #: modules/visual_script/visual_script_flow_control.cpp msgid "Iterator became invalid" -msgstr "" +msgstr "Iterador tornou-se inválido" #: modules/visual_script/visual_script_flow_control.cpp msgid "Iterator became invalid: " -msgstr "" +msgstr "Iterador tornou-se inválido: " #: modules/visual_script/visual_script_func_nodes.cpp -#, fuzzy msgid "Invalid index property name." -msgstr "Nome de classe pai inválido" +msgstr "Nome da propriedade de índice inválido." #: modules/visual_script/visual_script_func_nodes.cpp msgid "Base object is not a Node!" @@ -6527,6 +6549,30 @@ msgstr "" msgid "just released" msgstr "" +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Run in Browser" +msgstr "Navegar" + +#: platform/javascript/export/export.cpp +msgid "Run exported HTML in the system's default browser." +msgstr "" + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not write file:\n" +msgstr "Não se pôde achar tile:" + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not read file:\n" +msgstr "Não se pôde achar tile:" + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not open template for export:\n" +msgstr "Não foi possível criar a pasta." + #: platform/uwp/export/export.cpp msgid "" "Couldn't read the certificate file. Are the path and password both correct?" @@ -6856,6 +6902,9 @@ msgstr "" "para que ele possa ter um tamanho. Caso contrário, defina-o como destino de " "render e atribua sua textura interna a algum nó para exibir." +#~ msgid "Surface" +#~ msgstr "Superfície" + #~ msgid "" #~ "A SampleLibrary resource must be created or set in the 'samples' property " #~ "in order for SamplePlayer to play sound." diff --git a/editor/translations/pt_PT.po b/editor/translations/pt_PT.po index dae8f12829..329ec9c053 100644 --- a/editor/translations/pt_PT.po +++ b/editor/translations/pt_PT.po @@ -910,7 +910,7 @@ msgstr "" msgid "Packing" msgstr "" -#: editor/editor_export.cpp +#: editor/editor_export.cpp platform/javascript/export/export.cpp msgid "Template file not found:\n" msgstr "" @@ -3383,10 +3383,12 @@ msgid "Set Handle" msgstr "" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp msgid "Add/Remove Color Ramp Point" msgstr "" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp #: editor/plugins/shader_graph_editor_plugin.cpp msgid "Modify Color Ramp" msgstr "" @@ -3421,6 +3423,10 @@ msgstr "" msgid "Update from Scene" msgstr "" +#: editor/plugins/curve_editor_plugin.cpp +msgid "Modify Curve" +msgstr "" + #: editor/plugins/item_list_editor_plugin.cpp msgid "Item %d" msgstr "" @@ -3722,6 +3728,10 @@ msgid "Node does not contain geometry (faces)." msgstr "" #: editor/plugins/particles_editor_plugin.cpp +msgid "A processor material of type 'ParticlesMaterial' is required." +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp msgid "Faces contain no area!" msgstr "" @@ -3734,11 +3744,11 @@ msgid "Generate AABB" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Mesh" +msgid "Create Emission Points From Mesh" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Node" +msgid "Create Emission Points From Node" msgstr "" #: editor/plugins/particles_editor_plugin.cpp @@ -3750,21 +3760,25 @@ msgid "Create Emitter" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Positions:" +msgid "Emission Points:" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Fill:" +msgid "Surface Points" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Surface" +msgid "Surface Points+Normal (Directed)" msgstr "" #: editor/plugins/particles_editor_plugin.cpp msgid "Volume" msgstr "" +#: editor/plugins/particles_editor_plugin.cpp +msgid "Emission Source: " +msgstr "" + #: editor/plugins/path_2d_editor_plugin.cpp msgid "Remove Point from Curve" msgstr "" @@ -6368,6 +6382,26 @@ msgstr "" msgid "just released" msgstr "" +#: platform/javascript/export/export.cpp +msgid "Run in Browser" +msgstr "" + +#: platform/javascript/export/export.cpp +msgid "Run exported HTML in the system's default browser." +msgstr "" + +#: platform/javascript/export/export.cpp +msgid "Could not write file:\n" +msgstr "" + +#: platform/javascript/export/export.cpp +msgid "Could not read file:\n" +msgstr "" + +#: platform/javascript/export/export.cpp +msgid "Could not open template for export:\n" +msgstr "" + #: platform/uwp/export/export.cpp msgid "" "Couldn't read the certificate file. Are the path and password both correct?" diff --git a/editor/translations/ru.po b/editor/translations/ru.po index d7302c58d7..576261f8df 100644 --- a/editor/translations/ru.po +++ b/editor/translations/ru.po @@ -2,7 +2,7 @@ # Copyright (C) 2016-2017 Juan Linietsky, Ariel Manzur and the Godot community # This file is distributed under the same license as the Godot source code. # -# DimOkGamer <dimokgamer@gmail.com>, 2016. +# DimOkGamer <dimokgamer@gmail.com>, 2016-2017. # Maxim Kim <habamax@gmail.com>, 2016. # Maxim toby3d Lebedev <mail@toby3d.ru>, 2016. # @@ -10,7 +10,7 @@ msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2016-12-14 17:04+0000\n" +"PO-Revision-Date: 2017-01-09 02:56+0000\n" "Last-Translator: DimOkGamer <dimokgamer@gmail.com>\n" "Language-Team: Russian <https://hosted.weblate.org/projects/godot-engine/" "godot/ru/>\n" @@ -20,7 +20,7 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" "%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" -"X-Generator: Weblate 2.10-dev\n" +"X-Generator: Weblate 2.11-dev\n" #: editor/animation_editor.cpp msgid "Disabled" @@ -932,7 +932,7 @@ msgstr "Сохранение файла:" msgid "Packing" msgstr "Упаковывание" -#: editor/editor_export.cpp +#: editor/editor_export.cpp platform/javascript/export/export.cpp msgid "Template file not found:\n" msgstr "" @@ -1108,9 +1108,8 @@ msgid "Constants:" msgstr "Константы:" #: editor/editor_help.cpp -#, fuzzy msgid "Property Description:" -msgstr "Краткое описание:" +msgstr "Описание свойства:" #: editor/editor_help.cpp msgid "Method Description:" @@ -2762,8 +2761,9 @@ msgid "Compress" msgstr "Сжимать" #: editor/io_plugins/editor_translation_import_plugin.cpp +#, fuzzy msgid "Add to Project (godot.cfg)" -msgstr "Добавить в проект (godot.cfg)" +msgstr "Добавить в проект (engine.cfg)" #: editor/io_plugins/editor_translation_import_plugin.cpp msgid "Import Languages:" @@ -3482,10 +3482,12 @@ msgid "Set Handle" msgstr "Установить обработчик" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp msgid "Add/Remove Color Ramp Point" msgstr "Добавить/Удалить точку Color Ramp" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp #: editor/plugins/shader_graph_editor_plugin.cpp msgid "Modify Color Ramp" msgstr "Изменена Color Ramp" @@ -3520,6 +3522,11 @@ msgstr "Импортировать из сцены" msgid "Update from Scene" msgstr "Обновить из сцены" +#: editor/plugins/curve_editor_plugin.cpp +#, fuzzy +msgid "Modify Curve" +msgstr "Изменена карта кривой" + #: editor/plugins/item_list_editor_plugin.cpp msgid "Item %d" msgstr "Элемент %d" @@ -3825,6 +3832,10 @@ msgid "Node does not contain geometry (faces)." msgstr "Узел не содержит геометрии (грани)." #: editor/plugins/particles_editor_plugin.cpp +msgid "A processor material of type 'ParticlesMaterial' is required." +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp msgid "Faces contain no area!" msgstr "Грани не содержат зоны!" @@ -3837,11 +3848,13 @@ msgid "Generate AABB" msgstr "Сгенерировать AABB" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Mesh" +#, fuzzy +msgid "Create Emission Points From Mesh" msgstr "Создать излучатель из полисетки" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Node" +#, fuzzy +msgid "Create Emission Points From Node" msgstr "Создать излучатель из узла" #: editor/plugins/particles_editor_plugin.cpp @@ -3853,21 +3866,28 @@ msgid "Create Emitter" msgstr "Создать излучатель" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Positions:" +#, fuzzy +msgid "Emission Points:" msgstr "Количество выбросов:" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Fill:" -msgstr "Заполнение излучателя:" +#, fuzzy +msgid "Surface Points" +msgstr "Поверхностей %d" #: editor/plugins/particles_editor_plugin.cpp -msgid "Surface" -msgstr "Поверхность" +msgid "Surface Points+Normal (Directed)" +msgstr "" #: editor/plugins/particles_editor_plugin.cpp msgid "Volume" msgstr "Объём" +#: editor/plugins/particles_editor_plugin.cpp +#, fuzzy +msgid "Emission Source: " +msgstr "Заполнение излучателя:" + #: editor/plugins/path_2d_editor_plugin.cpp msgid "Remove Point from Curve" msgstr "Удалена точка с кривой" @@ -5193,12 +5213,14 @@ msgid "Invalid project path, the path must exist!" msgstr "Неверный путь к проекту, путь должен существовать!" #: editor/project_manager.cpp +#, fuzzy msgid "Invalid project path, godot.cfg must not exist." -msgstr "Недопустимый путь к проекту, godot.cfg не должен существовать." +msgstr "Недопустимый путь к проекту, engine.cfg не должен существовать." #: editor/project_manager.cpp +#, fuzzy msgid "Invalid project path, godot.cfg must exist." -msgstr "Недопустимый путь к проекту, godot.cfg должен существовать." +msgstr "Недопустимый путь к проекту, engine.cfg должен существовать." #: editor/project_manager.cpp msgid "Imported Project" @@ -5209,8 +5231,9 @@ msgid "Invalid project path (changed anything?)." msgstr "Неверный путь к проекту (Что-то изменили?)." #: editor/project_manager.cpp +#, fuzzy msgid "Couldn't create godot.cfg in project path." -msgstr "Не могу создать godot.cfg в папке проекта." +msgstr "Не могу создать engine.cfg в папке проекта." #: editor/project_manager.cpp msgid "The following files failed extraction from package:" @@ -5494,8 +5517,9 @@ msgid "Remove Resource Remap Option" msgstr "Удалён параметр ресурса перенаправления" #: editor/project_settings.cpp +#, fuzzy msgid "Project Settings (godot.cfg)" -msgstr "Настройки проекта (godot.cfg)" +msgstr "Настройки проекта (engine.cfg)" #: editor/project_settings.cpp editor/settings_config_dialog.cpp msgid "General" @@ -6176,9 +6200,8 @@ msgid "Change Notifier Extents" msgstr "Изменены границы уведомителя" #: editor/spatial_editor_gizmos.cpp -#, fuzzy msgid "Change Probe Extents" -msgstr "Изменены границы уведомителя" +msgstr "Изменены Probe Extents" #: modules/gdscript/gd_functions.cpp #: modules/visual_script/visual_script_builtin_funcs.cpp @@ -6508,7 +6531,32 @@ msgstr "просто нажата" msgid "just released" msgstr "просто отпущена" +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Run in Browser" +msgstr "Обзор" + +#: platform/javascript/export/export.cpp +msgid "Run exported HTML in the system's default browser." +msgstr "" + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not write file:\n" +msgstr "Невозможно найти тайл:" + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not read file:\n" +msgstr "Невозможно найти тайл:" + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not open template for export:\n" +msgstr "Невозможно создать папку." + #: platform/uwp/export/export.cpp +#, fuzzy msgid "" "Couldn't read the certificate file. Are the path and password both correct?" msgstr "Не могу прочитать файл сертификата. Уверены, что путь и пароль верны?" @@ -6837,6 +6885,9 @@ msgstr "" "сделайте его целью рендеринга и передайте его внутренние текстуры какому-то " "другому узлу для отображения." +#~ msgid "Surface" +#~ msgstr "Поверхность" + #~ msgid "" #~ "A SampleLibrary resource must be created or set in the 'samples' property " #~ "in order for SamplePlayer to play sound." @@ -6881,33 +6932,51 @@ msgstr "" #~ msgid "No exporter for platform '%s' yet." #~ msgstr "Платформа '%s' пока не поддерживается." -#, fuzzy #~ msgid "Create Android keystore" -#~ msgstr "Создать новый ресурс" +#~ msgstr "Создать keystore для Android" -#, fuzzy #~ msgid "Full name" -#~ msgstr "Допустимое имя" +#~ msgstr "Полное имя" + +#~ msgid "Organizational unit" +#~ msgstr "Подразделение" -#, fuzzy #~ msgid "Organization" -#~ msgstr "Переход" +#~ msgstr "Организация" + +#~ msgid "City" +#~ msgstr "Город" -#, fuzzy #~ msgid "State" -#~ msgstr "Статус:" +#~ msgstr "Государство" + +#~ msgid "2 letter country code" +#~ msgstr "Двух буквенный код страны" + +#~ msgid "User alias" +#~ msgstr "Псевдоним пользователя" -#, fuzzy #~ msgid "Password" -#~ msgstr "Пароль:" +#~ msgstr "Пароль" -#, fuzzy #~ msgid "at least 6 characters" -#~ msgstr "Допустимые символы:" +#~ msgstr "минимум 6 символов" -#, fuzzy #~ msgid "File name" -#~ msgstr "Новое имя:" +#~ msgstr "Имя файла" + +#~ msgid "Path : (better to save outside of project)" +#~ msgstr "Путь: (лучше сохранить за пределами проекта)" + +#~ msgid "" +#~ "Release keystore is not set.\n" +#~ "Do you want to create one?" +#~ msgstr "" +#~ "Релизный keystore не задан.\n" +#~ "Хотите создать новый?" + +#~ msgid "Fill Keystore/Release User and Release Password" +#~ msgstr "Заполните раздел Keystore" #~ msgid "Include" #~ msgstr "Включить" diff --git a/editor/translations/sk.po b/editor/translations/sk.po index 162b618e73..9dc83e0cd3 100644 --- a/editor/translations/sk.po +++ b/editor/translations/sk.po @@ -911,7 +911,7 @@ msgstr "" msgid "Packing" msgstr "" -#: editor/editor_export.cpp +#: editor/editor_export.cpp platform/javascript/export/export.cpp msgid "Template file not found:\n" msgstr "" @@ -3387,10 +3387,12 @@ msgid "Set Handle" msgstr "" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp msgid "Add/Remove Color Ramp Point" msgstr "" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp #: editor/plugins/shader_graph_editor_plugin.cpp msgid "Modify Color Ramp" msgstr "" @@ -3425,6 +3427,10 @@ msgstr "" msgid "Update from Scene" msgstr "" +#: editor/plugins/curve_editor_plugin.cpp +msgid "Modify Curve" +msgstr "" + #: editor/plugins/item_list_editor_plugin.cpp msgid "Item %d" msgstr "" @@ -3726,6 +3732,10 @@ msgid "Node does not contain geometry (faces)." msgstr "" #: editor/plugins/particles_editor_plugin.cpp +msgid "A processor material of type 'ParticlesMaterial' is required." +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp msgid "Faces contain no area!" msgstr "" @@ -3738,11 +3748,11 @@ msgid "Generate AABB" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Mesh" +msgid "Create Emission Points From Mesh" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Node" +msgid "Create Emission Points From Node" msgstr "" #: editor/plugins/particles_editor_plugin.cpp @@ -3754,21 +3764,25 @@ msgid "Create Emitter" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Positions:" +msgid "Emission Points:" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Fill:" +msgid "Surface Points" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Surface" +msgid "Surface Points+Normal (Directed)" msgstr "" #: editor/plugins/particles_editor_plugin.cpp msgid "Volume" msgstr "" +#: editor/plugins/particles_editor_plugin.cpp +msgid "Emission Source: " +msgstr "" + #: editor/plugins/path_2d_editor_plugin.cpp msgid "Remove Point from Curve" msgstr "" @@ -6375,6 +6389,26 @@ msgstr "" msgid "just released" msgstr "" +#: platform/javascript/export/export.cpp +msgid "Run in Browser" +msgstr "" + +#: platform/javascript/export/export.cpp +msgid "Run exported HTML in the system's default browser." +msgstr "" + +#: platform/javascript/export/export.cpp +msgid "Could not write file:\n" +msgstr "" + +#: platform/javascript/export/export.cpp +msgid "Could not read file:\n" +msgstr "" + +#: platform/javascript/export/export.cpp +msgid "Could not open template for export:\n" +msgstr "" + #: platform/uwp/export/export.cpp msgid "" "Couldn't read the certificate file. Are the path and password both correct?" diff --git a/editor/translations/sl.po b/editor/translations/sl.po index b8965f6ca2..a90a691f44 100644 --- a/editor/translations/sl.po +++ b/editor/translations/sl.po @@ -911,7 +911,7 @@ msgstr "" msgid "Packing" msgstr "" -#: editor/editor_export.cpp +#: editor/editor_export.cpp platform/javascript/export/export.cpp msgid "Template file not found:\n" msgstr "" @@ -3384,10 +3384,12 @@ msgid "Set Handle" msgstr "" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp msgid "Add/Remove Color Ramp Point" msgstr "" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp #: editor/plugins/shader_graph_editor_plugin.cpp msgid "Modify Color Ramp" msgstr "" @@ -3422,6 +3424,10 @@ msgstr "" msgid "Update from Scene" msgstr "" +#: editor/plugins/curve_editor_plugin.cpp +msgid "Modify Curve" +msgstr "" + #: editor/plugins/item_list_editor_plugin.cpp msgid "Item %d" msgstr "" @@ -3723,6 +3729,10 @@ msgid "Node does not contain geometry (faces)." msgstr "" #: editor/plugins/particles_editor_plugin.cpp +msgid "A processor material of type 'ParticlesMaterial' is required." +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp msgid "Faces contain no area!" msgstr "" @@ -3735,11 +3745,11 @@ msgid "Generate AABB" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Mesh" +msgid "Create Emission Points From Mesh" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Node" +msgid "Create Emission Points From Node" msgstr "" #: editor/plugins/particles_editor_plugin.cpp @@ -3751,21 +3761,25 @@ msgid "Create Emitter" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Positions:" +msgid "Emission Points:" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Fill:" +msgid "Surface Points" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Surface" +msgid "Surface Points+Normal (Directed)" msgstr "" #: editor/plugins/particles_editor_plugin.cpp msgid "Volume" msgstr "" +#: editor/plugins/particles_editor_plugin.cpp +msgid "Emission Source: " +msgstr "" + #: editor/plugins/path_2d_editor_plugin.cpp msgid "Remove Point from Curve" msgstr "" @@ -6368,6 +6382,26 @@ msgstr "" msgid "just released" msgstr "" +#: platform/javascript/export/export.cpp +msgid "Run in Browser" +msgstr "" + +#: platform/javascript/export/export.cpp +msgid "Run exported HTML in the system's default browser." +msgstr "" + +#: platform/javascript/export/export.cpp +msgid "Could not write file:\n" +msgstr "" + +#: platform/javascript/export/export.cpp +msgid "Could not read file:\n" +msgstr "" + +#: platform/javascript/export/export.cpp +msgid "Could not open template for export:\n" +msgstr "" + #: platform/uwp/export/export.cpp msgid "" "Couldn't read the certificate file. Are the path and password both correct?" diff --git a/editor/translations/th.po b/editor/translations/th.po new file mode 100644 index 0000000000..883c024ff3 --- /dev/null +++ b/editor/translations/th.po @@ -0,0 +1,7239 @@ +# Thai translation of the Godot Engine editor +# Copyright (C) 2016-2017 Juan Linietsky, Ariel Manzur and the Godot community +# This file is distributed under the same license as the Godot source code. +# +# Poommetee Ketson <poommetee@protonmail.com>, 2017. +# +msgid "" +msgstr "" +"Project-Id-Version: Godot Engine editor\n" +"PO-Revision-Date: 2017-04-03 00:59+0000\n" +"Last-Translator: Poommetee Ketson <poommetee@protonmail.com>\n" +"Language-Team: Thai <https://hosted.weblate.org/projects/godot-engine/godot/" +"th/>\n" +"Language: th\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8-bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"X-Generator: Weblate 2.13-dev\n" + +#: editor/animation_editor.cpp +#, fuzzy +msgid "Disabled" +msgstr "ปิดใช้งาน" + +#: editor/animation_editor.cpp +msgid "All Selection" +msgstr "" + +#: editor/animation_editor.cpp +msgid "Move Add Key" +msgstr "" + +#: editor/animation_editor.cpp +msgid "Anim Change Transition" +msgstr "แก้ไขทรานสิชันแอนิเมชัน" + +#: editor/animation_editor.cpp +msgid "Anim Change Transform" +msgstr "เคลื่อนย้ายแอนิเมชัน" + +#: editor/animation_editor.cpp +msgid "Anim Change Value" +msgstr "แก้ไขค่าแอนิเมชัน" + +#: editor/animation_editor.cpp +msgid "Anim Change Call" +msgstr "แก้ไขการเรียกฟังก์ชันแอนิเมชัน" + +#: editor/animation_editor.cpp +msgid "Anim Add Track" +msgstr "เพิ่มแทร็กแอนิเมชัน" + +#: editor/animation_editor.cpp +msgid "Anim Duplicate Keys" +msgstr "ทำซ้ำคีย์แอนิเมชัน" + +#: editor/animation_editor.cpp +msgid "Move Anim Track Up" +msgstr "เลื่อนแทร็กแอนิเมชันขึ้น" + +#: editor/animation_editor.cpp +msgid "Move Anim Track Down" +msgstr "เลื่อนแทร็กแอนิเมชันลง" + +#: editor/animation_editor.cpp +msgid "Remove Anim Track" +msgstr "ลบแทร็กแอนิเมชัน" + +#: editor/animation_editor.cpp +msgid "Set Transitions to:" +msgstr "กำหนดทรานสิชันเป็น:" + +#: editor/animation_editor.cpp +msgid "Anim Track Rename" +msgstr "เปลี่ยนชื่อแทร็กแอนิเมชัน" + +#: editor/animation_editor.cpp +#, fuzzy +msgid "Anim Track Change Interpolation" +msgstr "แก้ไขการเชื่อมท่าแอนิเมชัน" + +#: editor/animation_editor.cpp +msgid "Anim Track Change Value Mode" +msgstr "เปลี่ยนโหมดแทร็กแอนิเมชัน" + +#: editor/animation_editor.cpp +#, fuzzy +msgid "Anim Track Change Wrap Mode" +msgstr "เปลี่ยนโหมดแทร็กแอนิเมชัน" + +#: editor/animation_editor.cpp +msgid "Edit Node Curve" +msgstr "แก้ไขเส้นโค้งโหนด" + +#: editor/animation_editor.cpp +msgid "Edit Selection Curve" +msgstr "แก้ไขเส้นโค้งการเลือก" + +#: editor/animation_editor.cpp +msgid "Anim Delete Keys" +msgstr "ลบคีย์แอนิเมชัน" + +#: editor/animation_editor.cpp editor/plugins/tile_map_editor_plugin.cpp +msgid "Duplicate Selection" +msgstr "ทำซ้ำที่เลือก" + +#: editor/animation_editor.cpp +#, fuzzy +msgid "Duplicate Transposed" +msgstr "ทำซ้ำเคลื่อน" + +#: editor/animation_editor.cpp +msgid "Remove Selection" +msgstr "ลบที่เลือก" + +#: editor/animation_editor.cpp +msgid "Continuous" +msgstr "ต่อเนื่อง" + +#: editor/animation_editor.cpp +msgid "Discrete" +msgstr "ไม่ต่อเนื่อง" + +#: editor/animation_editor.cpp +msgid "Trigger" +msgstr "" + +#: editor/animation_editor.cpp +msgid "Anim Add Key" +msgstr "เพิ่มคีย์แอนิเมชัน" + +#: editor/animation_editor.cpp +msgid "Anim Move Keys" +msgstr "ย้ายคีย์แอนิเมชัน" + +#: editor/animation_editor.cpp +msgid "Scale Selection" +msgstr "" + +#: editor/animation_editor.cpp +msgid "Scale From Cursor" +msgstr "" + +#: editor/animation_editor.cpp +msgid "Goto Next Step" +msgstr "ถัดไป" + +#: editor/animation_editor.cpp +msgid "Goto Prev Step" +msgstr "ก่อนหน้า" + +#: editor/animation_editor.cpp editor/property_editor.cpp +msgid "Linear" +msgstr "เส้นตรง" + +#: editor/animation_editor.cpp editor/plugins/theme_editor_plugin.cpp +msgid "Constant" +msgstr "คงที่" + +#: editor/animation_editor.cpp +msgid "In" +msgstr "เข้า" + +#: editor/animation_editor.cpp +msgid "Out" +msgstr "ออก" + +#: editor/animation_editor.cpp +msgid "In-Out" +msgstr "เข้า-ออก" + +#: editor/animation_editor.cpp +msgid "Out-In" +msgstr "ออก-เข้า" + +#: editor/animation_editor.cpp +msgid "Transitions" +msgstr "ทรานสิชัน" + +#: editor/animation_editor.cpp +msgid "Optimize Animation" +msgstr "เพิ่มประสิทธิภาพแอนิเมชัน" + +#: editor/animation_editor.cpp +msgid "Clean-Up Animation" +msgstr "เก็บกวาดแอนิเมชัน" + +#: editor/animation_editor.cpp +#, fuzzy +msgid "Create NEW track for %s and insert key?" +msgstr "เพิ่มแทร็กใหม่สำหรับ %s และเพิ่มคีย์?" + +#: editor/animation_editor.cpp +#, fuzzy +msgid "Create %d NEW tracks and insert keys?" +msgstr "เพิ่มแทร็กใหม่ %d แทร็กและเพิ่มคีย์?" + +#: editor/animation_editor.cpp editor/create_dialog.cpp +#: editor/editor_audio_buses.cpp +#: editor/plugins/light_occluder_2d_editor_plugin.cpp +#: editor/plugins/mesh_instance_editor_plugin.cpp +#: editor/plugins/navigation_polygon_editor_plugin.cpp +#: editor/plugins/particles_editor_plugin.cpp editor/project_manager.cpp +#: editor/script_create_dialog.cpp +msgid "Create" +msgstr "สร้าง" + +#: editor/animation_editor.cpp +msgid "Anim Create & Insert" +msgstr "สร้างและแทรกแอนิเมชัน" + +#: editor/animation_editor.cpp +msgid "Anim Insert Track & Key" +msgstr "เพิ่มแทร็กและคีย์แอนิเมชัน" + +#: editor/animation_editor.cpp +msgid "Anim Insert Key" +msgstr "แทรกคีย์แอนิเมชัน" + +#: editor/animation_editor.cpp +msgid "Change Anim Len" +msgstr "ปรับความยาวแอนิเมชัน" + +#: editor/animation_editor.cpp +msgid "Change Anim Loop" +msgstr "ปรับการวนซ้ำแอนิเมชัน" + +#: editor/animation_editor.cpp +msgid "Anim Create Typed Value Key" +msgstr "สร้างคีย์ระบุประเภทแอนิเมชัน" + +#: editor/animation_editor.cpp +msgid "Anim Insert" +msgstr "แทรกแอนิเมชัน" + +#: editor/animation_editor.cpp +msgid "Anim Scale Keys" +msgstr "ปรับคีย์แอนิเมชัน" + +#: editor/animation_editor.cpp +msgid "Anim Add Call Track" +msgstr "เพิ่มแทร็กฟังก์ชัน" + +#: editor/animation_editor.cpp +msgid "Animation zoom." +msgstr "ซูมแอนิเมชัน" + +#: editor/animation_editor.cpp +msgid "Length (s):" +msgstr "ความยาว (วิ):" + +#: editor/animation_editor.cpp +#, fuzzy +msgid "Animation length (in seconds)." +msgstr "ความยาวแอนิเมชัน (วินาที)" + +#: editor/animation_editor.cpp +msgid "Step (s):" +msgstr "ช่วง (วิ):" + +#: editor/animation_editor.cpp +msgid "Cursor step snap (in seconds)." +msgstr "" + +#: editor/animation_editor.cpp +msgid "Enable/Disable looping in animation." +msgstr "เปิด/ปิดการวนซ้ำของแอนิเมชัน" + +#: editor/animation_editor.cpp +msgid "Add new tracks." +msgstr "เพิ่มแทร็กใหม่" + +#: editor/animation_editor.cpp +msgid "Move current track up." +msgstr "เลื่อนแทร็กขึ้น" + +#: editor/animation_editor.cpp +msgid "Move current track down." +msgstr "เลื่อนแทร็กลง" + +#: editor/animation_editor.cpp +msgid "Remove selected track." +msgstr "ลบแทร็กที่เลือก" + +#: editor/animation_editor.cpp +msgid "Track tools" +msgstr "เครื่องมือแทร็ก" + +#: editor/animation_editor.cpp +msgid "Enable editing of individual keys by clicking them." +msgstr "เปิดการแก้ไขคีย์โดยการคลิก" + +#: editor/animation_editor.cpp +msgid "Anim. Optimizer" +msgstr "ตัวเพิ่มประสิทธิภาพแอนิเมชัน" + +#: editor/animation_editor.cpp +msgid "Max. Linear Error:" +msgstr "ผิดพลาดเชิงเส้นมากที่สุด:" + +#: editor/animation_editor.cpp +#, fuzzy +msgid "Max. Angular Error:" +msgstr "ผิดพลาดเชิงมุมมากที่สุด:" + +#: editor/animation_editor.cpp +msgid "Max Optimizable Angle:" +msgstr "" + +#: editor/animation_editor.cpp +msgid "Optimize" +msgstr "เพิ่มประสิทธิภาพ" + +#: editor/animation_editor.cpp +msgid "Select an AnimationPlayer from the Scene Tree to edit animations." +msgstr "เลือก AnimationPlayer จากผังฉากเพื่อแก้ไขแอนิเมชัน" + +#: editor/animation_editor.cpp +msgid "Key" +msgstr "คีย์" + +#: editor/animation_editor.cpp +msgid "Transition" +msgstr "ทรานสิชัน" + +#: editor/animation_editor.cpp +msgid "Scale Ratio:" +msgstr "อัตราส่วนขนาด:" + +#: editor/animation_editor.cpp +msgid "Call Functions in Which Node?" +msgstr "เรียกฟังก์ชันของโหนดใด?" + +#: editor/animation_editor.cpp +msgid "Remove invalid keys" +msgstr "ลบคีย์ที่ผิดพลาด" + +#: editor/animation_editor.cpp +msgid "Remove unresolved and empty tracks" +msgstr "ลบแทร็กว่างเปล่า" + +#: editor/animation_editor.cpp +msgid "Clean-up all animations" +msgstr "เก็บกวาดทุกแอนิเมชัน" + +#: editor/animation_editor.cpp +msgid "Clean-Up Animation(s) (NO UNDO!)" +msgstr "เก็บกวาดแอนิเมชัน (ย้อนกลับไม่ได้!)" + +#: editor/animation_editor.cpp +msgid "Clean-Up" +msgstr "เก็บกวาด" + +#: editor/array_property_edit.cpp +#, fuzzy +msgid "Resize Array" +msgstr "ปรับขนาดอาร์เรย์" + +#: editor/array_property_edit.cpp +#, fuzzy +msgid "Change Array Value Type" +msgstr "แก้ไขชนิดตัวแปรในอาร์เรย์" + +#: editor/array_property_edit.cpp +#, fuzzy +msgid "Change Array Value" +msgstr "แก้ไขค่าในอาร์เรย์" + +#: editor/asset_library_editor_plugin.cpp editor/create_dialog.cpp +#: editor/editor_help.cpp editor/editor_node.cpp +#: editor/plugins/script_editor_plugin.cpp editor/property_selector.cpp +#: editor/quick_open.cpp editor/settings_config_dialog.cpp +#, fuzzy +msgid "Search:" +msgstr "ค้นหา:" + +#: editor/asset_library_editor_plugin.cpp +#, fuzzy +msgid "Sort:" +msgstr "เรียงตาม:" + +#: editor/asset_library_editor_plugin.cpp +msgid "Reverse" +msgstr "ย้อนกลับ" + +#: editor/asset_library_editor_plugin.cpp editor/project_settings.cpp +#, fuzzy +msgid "Category:" +msgstr "ประเภท:" + +#: editor/asset_library_editor_plugin.cpp +#, fuzzy +msgid "All" +msgstr "ทั้งหมด" + +#: editor/asset_library_editor_plugin.cpp +#, fuzzy +msgid "Site:" +msgstr "ไซต์:" + +#: editor/asset_library_editor_plugin.cpp +#, fuzzy +msgid "Support.." +msgstr "การสนับสนุน" + +#: editor/asset_library_editor_plugin.cpp +#, fuzzy +msgid "Official" +msgstr "ผู้ผลิต" + +#: editor/asset_library_editor_plugin.cpp +#, fuzzy +msgid "Community" +msgstr "ชุมชน" + +#: editor/asset_library_editor_plugin.cpp +#, fuzzy +msgid "Testing" +msgstr "ทดสอบ" + +#: editor/asset_library_editor_plugin.cpp +msgid "Assets ZIP File" +msgstr "" + +#: editor/call_dialog.cpp +#, fuzzy +msgid "Method List For '%s':" +msgstr "รายชื่อเมท็อดของ '%s':" + +#: editor/call_dialog.cpp modules/visual_script/visual_script_editor.cpp +msgid "Call" +msgstr "เรียก" + +#: editor/call_dialog.cpp editor/connections_dialog.cpp +#: editor/export_template_manager.cpp +#: editor/plugins/animation_player_editor_plugin.cpp +#: editor/plugins/canvas_item_editor_plugin.cpp +#: editor/plugins/resource_preloader_editor_plugin.cpp +#: editor/plugins/sample_library_editor_plugin.cpp +#: editor/plugins/script_editor_plugin.cpp +#: editor/plugins/sprite_frames_editor_plugin.cpp editor/project_settings.cpp +#: editor/property_editor.cpp editor/run_settings_dialog.cpp +#: editor/settings_config_dialog.cpp +#: modules/visual_script/visual_script_editor.cpp +msgid "Close" +msgstr "ปิด" + +#: editor/call_dialog.cpp +#, fuzzy +msgid "Method List:" +msgstr "รายชื่อเมท็อด:" + +#: editor/call_dialog.cpp +#, fuzzy +msgid "Arguments:" +msgstr "ตัวแปร:" + +#: editor/call_dialog.cpp +#, fuzzy +msgid "Return:" +msgstr "คืนค่า:" + +#: editor/code_editor.cpp +#, fuzzy +msgid "Go to Line" +msgstr "ไปยังบรรทัด" + +#: editor/code_editor.cpp +#, fuzzy +msgid "Line Number:" +msgstr "บรรทัดที่:" + +#: editor/code_editor.cpp +#, fuzzy +msgid "No Matches" +msgstr "ไม่พบ" + +#: editor/code_editor.cpp +#, fuzzy +msgid "Replaced %d occurrence(s)." +msgstr "แทนที่แล้ว %d ครั้ง" + +#: editor/code_editor.cpp +#, fuzzy +msgid "Replace" +msgstr "แทนที่" + +#: editor/code_editor.cpp +#, fuzzy +msgid "Replace All" +msgstr "แทนที่ทั้งหมด" + +#: editor/code_editor.cpp +#, fuzzy +msgid "Match Case" +msgstr "ตรงตามตัวพิมพ์ใหญ่-เล็ก" + +#: editor/code_editor.cpp +#, fuzzy +msgid "Whole Words" +msgstr "ทั้งคำ" + +#: editor/code_editor.cpp +#, fuzzy +msgid "Selection Only" +msgstr "เฉพาะที่เลือกไว้" + +#: editor/code_editor.cpp editor/editor_help.cpp +#: editor/plugins/script_editor_plugin.cpp +#: editor/plugins/script_text_editor.cpp +#: editor/plugins/shader_editor_plugin.cpp editor/project_settings.cpp +msgid "Search" +msgstr "ค้นหา" + +#: editor/code_editor.cpp editor/editor_help.cpp +#, fuzzy +msgid "Find" +msgstr "ค้นหา" + +#: editor/code_editor.cpp +#, fuzzy +msgid "Next" +msgstr "ต่อไป" + +#: editor/code_editor.cpp +#, fuzzy +msgid "Not found!" +msgstr "ไม่พบ!" + +#: editor/code_editor.cpp +#, fuzzy +msgid "Replace By" +msgstr "แทนที่ด้วย" + +#: editor/code_editor.cpp +#, fuzzy +msgid "Case Sensitive" +msgstr "ตรงตามตัวพิมพ์ใหญ่-เล็ก" + +#: editor/code_editor.cpp +#, fuzzy +msgid "Backwards" +msgstr "ย้อนกลับ" + +#: editor/code_editor.cpp +#, fuzzy +msgid "Prompt On Replace" +msgstr "เตือนก่อนแทนที่" + +#: editor/code_editor.cpp +#, fuzzy +msgid "Skip" +msgstr "ข้าม" + +#: editor/code_editor.cpp editor/plugins/canvas_item_editor_plugin.cpp +#, fuzzy +msgid "Zoom In" +msgstr "ขยาย" + +#: editor/code_editor.cpp editor/plugins/canvas_item_editor_plugin.cpp +#, fuzzy +msgid "Zoom Out" +msgstr "ย่อ" + +#: editor/code_editor.cpp +msgid "Reset Zoom" +msgstr "รีเซ็ตซูม" + +#: editor/code_editor.cpp editor/script_editor_debugger.cpp +msgid "Line:" +msgstr "บรรทัด:" + +#: editor/code_editor.cpp +#, fuzzy +msgid "Col:" +msgstr "คอลัมน์:" + +#: editor/connections_dialog.cpp +#, fuzzy +msgid "Method in target Node must be specified!" +msgstr "ต้องระบุเมท็อดในโหนดปลายทาง!" + +#: editor/connections_dialog.cpp +msgid "" +"Target method not found! Specify a valid method or attach a script to target " +"Node." +msgstr "ไม่พบเมท็อดปลายทาง! ระบุเมท็อดให้ถูกต้องหรือเพิ่มสคริปต์ในโหนดปลายทาง" + +#: editor/connections_dialog.cpp +#, fuzzy +msgid "Connect To Node:" +msgstr "เชื่อมโยงกับโหนด:" + +#: editor/connections_dialog.cpp editor/editor_autoload_settings.cpp +#: editor/groups_editor.cpp editor/plugins/item_list_editor_plugin.cpp +#: editor/plugins/theme_editor_plugin.cpp editor/project_settings.cpp +#, fuzzy +msgid "Add" +msgstr "เพิ่ม" + +#: editor/connections_dialog.cpp editor/dependency_editor.cpp +#: editor/plugins/animation_tree_editor_plugin.cpp +#: editor/plugins/theme_editor_plugin.cpp editor/project_manager.cpp +#, fuzzy +msgid "Remove" +msgstr "ลบ" + +#: editor/connections_dialog.cpp +#, fuzzy +msgid "Add Extra Call Argument:" +msgstr "เพิ่มตัวแปร:" + +#: editor/connections_dialog.cpp +#, fuzzy +msgid "Extra Call Arguments:" +msgstr "ตัวแปรเพิ่มเติม:" + +#: editor/connections_dialog.cpp +#, fuzzy +msgid "Path to Node:" +msgstr "ตำแหน่งที่อยู่โหนด:" + +#: editor/connections_dialog.cpp +#, fuzzy +msgid "Make Function" +msgstr "สร้างฟังก์ชันใหม่" + +#: editor/connections_dialog.cpp +#, fuzzy +msgid "Deferred" +msgstr "เรียกภายหลัง" + +#: editor/connections_dialog.cpp +#, fuzzy +msgid "Oneshot" +msgstr "ครั้งเดียว" + +#: editor/connections_dialog.cpp +#, fuzzy +msgid "Connect" +msgstr "เชื่อมโยง" + +#: editor/connections_dialog.cpp +msgid "Connect '%s' to '%s'" +msgstr "เชื่อมโยง '%s' กับ '%s'" + +#: editor/connections_dialog.cpp +#, fuzzy +msgid "Connecting Signal:" +msgstr "เชื่อมโยงสัญญาณ:" + +#: editor/connections_dialog.cpp +msgid "Create Subscription" +msgstr "" + +#: editor/connections_dialog.cpp +#, fuzzy +msgid "Connect.." +msgstr "เชื่อมโยง.." + +#: editor/connections_dialog.cpp +#: editor/plugins/animation_tree_editor_plugin.cpp +#, fuzzy +msgid "Disconnect" +msgstr "ลบ" + +#: editor/connections_dialog.cpp editor/node_dock.cpp +#, fuzzy +msgid "Signals" +msgstr "สัญญาณ" + +#: editor/create_dialog.cpp +#, fuzzy +msgid "Create New" +msgstr "สร้างใหม่" + +#: editor/create_dialog.cpp editor/editor_file_dialog.cpp +#: editor/filesystem_dock.cpp +#, fuzzy +msgid "Favorites:" +msgstr "ที่ชื่นชอบ:" + +#: editor/create_dialog.cpp editor/editor_file_dialog.cpp +#, fuzzy +msgid "Recent:" +msgstr "ล่าสุด:" + +#: editor/create_dialog.cpp editor/editor_help.cpp +#: editor/plugins/script_editor_plugin.cpp editor/property_selector.cpp +#: editor/quick_open.cpp +#, fuzzy +msgid "Matches:" +msgstr "พบ:" + +#: editor/create_dialog.cpp editor/editor_help.cpp editor/property_selector.cpp +#: editor/script_editor_debugger.cpp +#, fuzzy +msgid "Description:" +msgstr "รายละเอียด:" + +#: editor/dependency_editor.cpp +#, fuzzy +msgid "Search Replacement For:" +msgstr "หาตัวแทนสำหรับ:" + +#: editor/dependency_editor.cpp +#, fuzzy +msgid "Dependencies For:" +msgstr "การอ้างอิงของ:" + +#: editor/dependency_editor.cpp +#, fuzzy +msgid "" +"Scene '%s' is currently being edited.\n" +"Changes will not take effect unless reloaded." +msgstr "" +"ฉาก '%s' กำลังเปิดแก้ไขอยู่\n" +"การแก้ไขจะไม่ส่งผลจนกว่าจะโหลดใหม่" + +#: editor/dependency_editor.cpp +#, fuzzy +msgid "" +"Resource '%s' is in use.\n" +"Changes will take effect when reloaded." +msgstr "" +"รีซอร์ส '%s' อยู่ระหว่างการใช้งาน\n" +"การแก้ไขจะไม่ส่งผลจนกว่าจะโหลดใหม่" + +#: editor/dependency_editor.cpp +#, fuzzy +msgid "Dependencies" +msgstr "การอ้างอิง" + +#: editor/dependency_editor.cpp +#, fuzzy +msgid "Resource" +msgstr "รีซอร์ส" + +#: editor/dependency_editor.cpp editor/editor_autoload_settings.cpp +#: editor/project_manager.cpp editor/project_settings.cpp +#, fuzzy +msgid "Path" +msgstr "ตำแหน่ง" + +#: editor/dependency_editor.cpp +#, fuzzy +msgid "Dependencies:" +msgstr "การอ้างอิง:" + +#: editor/dependency_editor.cpp +#, fuzzy +msgid "Fix Broken" +msgstr "ซ่อมแซม" + +#: editor/dependency_editor.cpp +msgid "Dependency Editor" +msgstr "แก้ไขการอ้างอิง" + +#: editor/dependency_editor.cpp +msgid "Search Replacement Resource:" +msgstr "ค้นหารีซอร์สมาแทนที่:" + +#: editor/dependency_editor.cpp +msgid "Owners Of:" +msgstr "เจ้าของของ:" + +#: editor/dependency_editor.cpp +msgid "" +"The files being removed are required by other resources in order for them to " +"work.\n" +"Remove them anyway? (no undo)" +msgstr "" +"มีรีซอร์สอื่นต้องการไฟล์ที่กำลังลบ\n" +"ยืนยันจะลบหรือไม่? (ย้อนกลับไม่ได้)" + +#: editor/dependency_editor.cpp +msgid "Remove selected files from the project? (no undo)" +msgstr "ลบไฟล์ที่เลือกออกจากโปรเจกต์? (ย้อนกลับไม่ได้)" + +#: editor/dependency_editor.cpp +msgid "Error loading:" +msgstr "ผิดพลาดขณะโหลด:" + +#: editor/dependency_editor.cpp +#, fuzzy +msgid "Scene failed to load due to missing dependencies:" +msgstr "โหลดฉากไม่ได้เนื่องจากการอ้างอิงสูญหาย:" + +#: editor/dependency_editor.cpp editor/editor_node.cpp +msgid "Open Anyway" +msgstr "ยืนยันเปิดไฟล์" + +#: editor/dependency_editor.cpp +msgid "Which action should be taken?" +msgstr "จะทำอย่างไรต่อไป?" + +#: editor/dependency_editor.cpp +msgid "Fix Dependencies" +msgstr "ซ่อมแซมการอ้างอิง" + +#: editor/dependency_editor.cpp +msgid "Errors loading!" +msgstr "ผิดพลาดขณะโหลด!" + +#: editor/dependency_editor.cpp +msgid "Permanently delete %d item(s)? (No undo!)" +msgstr "ลบ %d ไฟล์ถาวร? (ย้อนกลับไม่ได้!)" + +#: editor/dependency_editor.cpp +msgid "Owns" +msgstr "เป็นเจ้าของ" + +#: editor/dependency_editor.cpp +msgid "Resources Without Explicit Ownership:" +msgstr "รีซอร์สที่ไม่มีเจ้าของที่ชัดเจน:" + +#: editor/dependency_editor.cpp editor/editor_node.cpp +msgid "Orphan Resource Explorer" +msgstr "ตัวจัดการรีซอร์สที่ไม่มีเจ้าของ" + +#: editor/dependency_editor.cpp +#, fuzzy +msgid "Delete selected files?" +msgstr "ลบไฟล์ที่เลือก?" + +#: editor/dependency_editor.cpp editor/editor_node.cpp +#: editor/filesystem_dock.cpp editor/plugins/item_list_editor_plugin.cpp +#: editor/project_export.cpp editor/scene_tree_dock.cpp +#, fuzzy +msgid "Delete" +msgstr "ลบ" + +#: editor/editor_audio_buses.cpp +msgid "Save Audio Bus Layout As.." +msgstr "" + +#: editor/editor_audio_buses.cpp +msgid "Location for New Layout.." +msgstr "" + +#: editor/editor_audio_buses.cpp +msgid "Open Audio Bus Layout" +msgstr "" + +#: editor/editor_audio_buses.cpp +#, fuzzy +msgid "Add Bus" +msgstr "เพิ่ม %s" + +#: editor/editor_audio_buses.cpp editor/property_editor.cpp +#: editor/script_create_dialog.cpp +msgid "Load" +msgstr "โหลด" + +#: editor/editor_audio_buses.cpp +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Save As" +msgstr "บันทึกเป็น" + +#: editor/editor_audio_buses.cpp editor/editor_node.cpp editor/import_dock.cpp +msgid "Default" +msgstr "ค่าเริ่มต้น" + +#: editor/editor_autoload_settings.cpp +#, fuzzy +msgid "Invalid name." +msgstr "ชื่อผิดพลาด" + +#: editor/editor_autoload_settings.cpp +#, fuzzy +msgid "Valid characters:" +msgstr "ตัวอักษรที่ใช้ได้:" + +#: editor/editor_autoload_settings.cpp +#, fuzzy +msgid "Invalid name. Must not collide with an existing engine class name." +msgstr "ชื่อผิดพลาด ต้องไม่ใช้ชื่อเดียวกับคลาสของโปรแกรม" + +#: editor/editor_autoload_settings.cpp +#, fuzzy +msgid "Invalid name. Must not collide with an existing buit-in type name." +msgstr "ชื่อผิดพลาด ต้องไม่ใช้ชื่อเดียวกับชนิดตัวแปร" + +#: editor/editor_autoload_settings.cpp +#, fuzzy +msgid "Invalid name. Must not collide with an existing global constant name." +msgstr "ชื่อผิดพลาด ต้องไม่ใช้ชื่อเดียวกับค่าคงที่" + +#: editor/editor_autoload_settings.cpp +msgid "Invalid Path." +msgstr "ตำแหน่งผิดพลาด" + +#: editor/editor_autoload_settings.cpp +#, fuzzy +msgid "File does not exist." +msgstr "ไม่พบไฟล์" + +#: editor/editor_autoload_settings.cpp +#, fuzzy +msgid "Not in resource path." +msgstr "ไม่อยู่ในโฟลเดอร์รีซอร์ส" + +#: editor/editor_autoload_settings.cpp +#, fuzzy +msgid "Add AutoLoad" +msgstr "เพิ่มออโต้โหลด" + +#: editor/editor_autoload_settings.cpp +#, fuzzy +msgid "Autoload '%s' already exists!" +msgstr "มีออโต้โหลด '%s' อยู่แล้ว!" + +#: editor/editor_autoload_settings.cpp +#, fuzzy +msgid "Rename Autoload" +msgstr "แก้ไขชื่อออโต้โหลด" + +#: editor/editor_autoload_settings.cpp +#, fuzzy +msgid "Toggle AutoLoad Globals" +msgstr "เปิดปิดออโต้โหลด" + +#: editor/editor_autoload_settings.cpp +#, fuzzy +msgid "Move Autoload" +msgstr "ย้ายออโต้โหลด" + +#: editor/editor_autoload_settings.cpp +#, fuzzy +msgid "Remove Autoload" +msgstr "ลบออโต้โหลด" + +#: editor/editor_autoload_settings.cpp +msgid "Enable" +msgstr "เปิด" + +#: editor/editor_autoload_settings.cpp +#, fuzzy +msgid "Rearrange Autoloads" +msgstr "จัดลำดับออโต้โหลด" + +#: editor/editor_autoload_settings.cpp editor/editor_file_dialog.cpp +#: editor/io_plugins/editor_font_import_plugin.cpp +#: editor/script_create_dialog.cpp scene/gui/file_dialog.cpp +#, fuzzy +msgid "Path:" +msgstr "ตำแหน่ง:" + +#: editor/editor_autoload_settings.cpp +#, fuzzy +msgid "Node Name:" +msgstr "ชื่อโหนด:" + +#: editor/editor_autoload_settings.cpp +#: editor/io_plugins/editor_scene_import_plugin.cpp +#: editor/plugins/sample_library_editor_plugin.cpp editor/project_manager.cpp +msgid "Name" +msgstr "ชื่อ" + +#: editor/editor_autoload_settings.cpp +#, fuzzy +msgid "Singleton" +msgstr "สคริปต์เดี่ยว" + +#: editor/editor_autoload_settings.cpp +msgid "List:" +msgstr "รายชื่อ:" + +#: editor/editor_data.cpp +#, fuzzy +msgid "Updating Scene" +msgstr "อัพเดทฉาก" + +#: editor/editor_data.cpp +msgid "Storing local changes.." +msgstr "เก็บการเปลี่ยนแปลงภายใน.." + +#: editor/editor_data.cpp +#, fuzzy +msgid "Updating scene.." +msgstr "อัพเดทฉาก.." + +#: editor/editor_dir_dialog.cpp +#, fuzzy +msgid "Choose a Directory" +msgstr "เลือกโฟลเดอร์" + +#: editor/editor_dir_dialog.cpp editor/editor_file_dialog.cpp +#: scene/gui/file_dialog.cpp +#, fuzzy +msgid "Create Folder" +msgstr "สร้างโฟลเดอร์" + +#: editor/editor_dir_dialog.cpp editor/editor_file_dialog.cpp +#: editor/editor_plugin_settings.cpp editor/plugins/theme_editor_plugin.cpp +#: editor/project_export.cpp scene/gui/file_dialog.cpp +msgid "Name:" +msgstr "ชื่อ:" + +#: editor/editor_dir_dialog.cpp editor/editor_file_dialog.cpp +#: scene/gui/file_dialog.cpp +#, fuzzy +msgid "Could not create folder." +msgstr "ไม่สามารถสร้างโฟลเดอร์" + +#: editor/editor_dir_dialog.cpp +msgid "Choose" +msgstr "เลือก" + +#: editor/editor_export.cpp +msgid "Storing File:" +msgstr "เก็บไฟล์:" + +#: editor/editor_export.cpp +msgid "Packing" +msgstr "กำลังรวบรวม" + +#: editor/editor_export.cpp platform/javascript/export/export.cpp +msgid "Template file not found:\n" +msgstr "" + +#: editor/editor_export.cpp +msgid "Added:" +msgstr "เพิ่ม:" + +#: editor/editor_export.cpp +msgid "Removed:" +msgstr "ลบ:" + +#: editor/editor_export.cpp +msgid "Error saving atlas:" +msgstr "ผิดพลาดขณะบันทึก atlas:" + +#: editor/editor_export.cpp +msgid "Could not save atlas subtexture:" +msgstr "บันทึก texture ย่อยของ atlas ไม่ได้:" + +#: editor/editor_export.cpp +#, fuzzy +msgid "Exporting for %s" +msgstr "ส่งออกสำหรับ %s" + +#: editor/editor_export.cpp +msgid "Setting Up.." +msgstr "กำลังตั้งค่า.." + +#: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp +#, fuzzy +msgid "File Exists, Overwrite?" +msgstr "มีไฟล์นี้อยู่แล้ว เขียนทับ?" + +#: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp +#, fuzzy +msgid "All Recognized" +msgstr "ทุกนามสุกลที่รู้จัก" + +#: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp +#, fuzzy +msgid "All Files (*)" +msgstr "ทุกไฟล์ (*)" + +#: editor/editor_file_dialog.cpp editor/editor_help.cpp editor/editor_node.cpp +#: editor/filesystem_dock.cpp editor/plugins/script_editor_plugin.cpp +#: editor/property_selector.cpp editor/quick_open.cpp scene/gui/file_dialog.cpp +msgid "Open" +msgstr "เปิด" + +#: editor/editor_file_dialog.cpp editor/editor_node.cpp +#: editor/plugins/animation_player_editor_plugin.cpp +#: editor/plugins/script_editor_plugin.cpp scene/gui/file_dialog.cpp +msgid "Save" +msgstr "บันทึก" + +#: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp +msgid "Save a File" +msgstr "บันทึกไฟล์" + +#: editor/editor_file_dialog.cpp +msgid "Go Back" +msgstr "ย้อนกลับ" + +#: editor/editor_file_dialog.cpp +msgid "Go Forward" +msgstr "ไปหน้า" + +#: editor/editor_file_dialog.cpp +msgid "Go Up" +msgstr "ขึ้นบน" + +#: editor/editor_file_dialog.cpp +#, fuzzy +msgid "Refresh" +msgstr "รีเฟรช" + +#: editor/editor_file_dialog.cpp +#, fuzzy +msgid "Toggle Hidden Files" +msgstr "เปิด/ปิด ไฟล์ที่ซ่อน" + +#: editor/editor_file_dialog.cpp +#, fuzzy +msgid "Toggle Favorite" +msgstr "เลือก/ลบ ที่ชื่นชอบ" + +#: editor/editor_file_dialog.cpp +#, fuzzy +msgid "Toggle Mode" +msgstr "สลับโหมด" + +#: editor/editor_file_dialog.cpp +msgid "Focus Path" +msgstr "" + +#: editor/editor_file_dialog.cpp +msgid "Move Favorite Up" +msgstr "เลื่อนที่ชื่นชอบขึ้น" + +#: editor/editor_file_dialog.cpp +msgid "Move Favorite Down" +msgstr "เลื่อนที่ชื่นชอบลง" + +#: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp +#, fuzzy +msgid "Directories & Files:" +msgstr "ไฟล์และโฟลเดอร์:" + +#: editor/editor_file_dialog.cpp +msgid "Preview:" +msgstr "ตัวอย่าง:" + +#: editor/editor_file_dialog.cpp editor/script_editor_debugger.cpp +#: scene/gui/file_dialog.cpp +msgid "File:" +msgstr "ไฟล์:" + +#: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp +#, fuzzy +msgid "Filter:" +msgstr "ตัวกรอง:" + +#: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp +#, fuzzy +msgid "Must use a valid extension." +msgstr "นามสกุลไฟล์ไม่ถูกต้อง" + +#: editor/editor_file_system.cpp +msgid "ScanSources" +msgstr "" + +#: editor/editor_file_system.cpp +#, fuzzy +msgid "(Re)Importing Assets" +msgstr "นำเข้าอีกครั้ง" + +#: editor/editor_help.cpp editor/plugins/script_editor_plugin.cpp +msgid "Search Help" +msgstr "ค้นหาในคู่มือ" + +#: editor/editor_help.cpp +msgid "Class List:" +msgstr "รายชื่อคลาส:" + +#: editor/editor_help.cpp +msgid "Search Classes" +msgstr "ค้นหาคลาส" + +#: editor/editor_help.cpp editor/property_editor.cpp +msgid "Class:" +msgstr "คลาส:" + +#: editor/editor_help.cpp editor/scene_tree_editor.cpp +#: editor/script_create_dialog.cpp +msgid "Inherits:" +msgstr "สืบทอดจาก:" + +#: editor/editor_help.cpp +msgid "Inherited by:" +msgstr "สืบทอดโดย:" + +#: editor/editor_help.cpp +msgid "Brief Description:" +msgstr "รายละเอียด:" + +#: editor/editor_help.cpp modules/visual_script/visual_script_editor.cpp +#, fuzzy +msgid "Members:" +msgstr "สมาชิก:" + +#: editor/editor_help.cpp +msgid "Public Methods:" +msgstr "เมท็อด:" + +#: editor/editor_help.cpp +#, fuzzy +msgid "GUI Theme Items:" +msgstr "ธีม:" + +#: editor/editor_help.cpp modules/visual_script/visual_script_editor.cpp +#, fuzzy +msgid "Signals:" +msgstr "สัญญาณ:" + +#: editor/editor_help.cpp +msgid "Constants:" +msgstr "ค่าคงที่:" + +#: editor/editor_help.cpp +#, fuzzy +msgid "Property Description:" +msgstr "รายละเอียดตัวแปร:" + +#: editor/editor_help.cpp +#, fuzzy +msgid "Method Description:" +msgstr "รายละเอียดเมท็อด:" + +#: editor/editor_help.cpp +#, fuzzy +msgid "Search Text" +msgstr "ค้นหาคำ" + +#: editor/editor_log.cpp +msgid " Output:" +msgstr " เอาท์พุต:" + +#: editor/editor_log.cpp editor/plugins/animation_tree_editor_plugin.cpp +#: editor/plugins/rich_text_editor_plugin.cpp editor/property_editor.cpp +#: editor/script_editor_debugger.cpp scene/gui/line_edit.cpp +#: scene/gui/text_edit.cpp +#, fuzzy +msgid "Clear" +msgstr "ลบทั้งหมด" + +#: editor/editor_node.cpp +msgid "Node From Scene" +msgstr "โหนดจากฉาก" + +#: editor/editor_node.cpp editor/plugins/animation_player_editor_plugin.cpp +#: editor/resources_dock.cpp +msgid "Error saving resource!" +msgstr "บันทึกรีซอร์สผิดพลาด!" + +#: editor/editor_node.cpp editor/plugins/animation_player_editor_plugin.cpp +#: editor/resources_dock.cpp +msgid "Save Resource As.." +msgstr "บันทึกรีซอร์สเป็น.." + +#: editor/editor_node.cpp editor/export_template_manager.cpp +#: editor/plugins/canvas_item_editor_plugin.cpp editor/scene_tree_dock.cpp +msgid "I see.." +msgstr "ตกลง.." + +#: editor/editor_node.cpp +msgid "Can't open file for writing:" +msgstr "เปิดไฟล์เพื่อเขียนไม่ได้:" + +#: editor/editor_node.cpp +msgid "Requested file format unknown:" +msgstr "ไม่ทราบรูปแบบไฟล์ที่ร้องขอ:" + +#: editor/editor_node.cpp +msgid "Error while saving." +msgstr "ผิดพลาดขณะบันทึก" + +#: editor/editor_node.cpp +msgid "Saving Scene" +msgstr "บันทึกฉาก" + +#: editor/editor_node.cpp +msgid "Analyzing" +msgstr "กำลังวิเคราะห์" + +#: editor/editor_node.cpp +msgid "Creating Thumbnail" +msgstr "กำลังสร้างรูปตัวอย่าง" + +#: editor/editor_node.cpp +#, fuzzy +msgid "" +"Couldn't save scene. Likely dependencies (instances) couldn't be satisfied." +msgstr "บันทึกฉากไม่ได้" + +#: editor/editor_node.cpp +msgid "Failed to load resource." +msgstr "โหลดรีซอร์สไม่ได้" + +#: editor/editor_node.cpp +msgid "Can't load MeshLibrary for merging!" +msgstr "โหลด MeshLibrary เพื่อรวมไม่ได้!" + +#: editor/editor_node.cpp +msgid "Error saving MeshLibrary!" +msgstr "ผิดพลาดขณะบันทึก MeshLibrary!" + +#: editor/editor_node.cpp +msgid "Can't load TileSet for merging!" +msgstr "โหลด TileSet เพื่อรวมไม่ได้!" + +#: editor/editor_node.cpp +msgid "Error saving TileSet!" +msgstr "ผิดพลาดขณะบันทึก TileSet!" + +#: editor/editor_node.cpp +#, fuzzy +msgid "Error trying to save layout!" +msgstr "ผิดพลาดขณะบันทึกเลย์เอาต์!" + +#: editor/editor_node.cpp +#, fuzzy +msgid "Default editor layout overridden." +msgstr "แทนที่เลย์เอาต์เริ่มต้น" + +#: editor/editor_node.cpp +#, fuzzy +msgid "Layout name not found!" +msgstr "ไม่พบชื่อเลย์เอาต์!" + +#: editor/editor_node.cpp +#, fuzzy +msgid "Restored default layout to base settings." +msgstr "คืนกลับเลย์เอาต์เป็นค่าเริ่มต้น" + +#: editor/editor_node.cpp +#, fuzzy +msgid "Copy Params" +msgstr "คัดลอกตัวแปร" + +#: editor/editor_node.cpp +#, fuzzy +msgid "Paste Params" +msgstr "วางตัวแปร" + +#: editor/editor_node.cpp editor/plugins/resource_preloader_editor_plugin.cpp +msgid "Paste Resource" +msgstr "วางรีซอร์ส" + +#: editor/editor_node.cpp +msgid "Copy Resource" +msgstr "คัดลอกรีซอร์ส" + +#: editor/editor_node.cpp +#, fuzzy +msgid "Make Built-In" +msgstr "ฝัง" + +#: editor/editor_node.cpp +msgid "Make Sub-Resources Unique" +msgstr "" + +#: editor/editor_node.cpp +msgid "Open in Help" +msgstr "เปิดในคู่มือ" + +#: editor/editor_node.cpp +#, fuzzy +msgid "There is no defined scene to run." +msgstr "ไม่ได้กำหนดฉากเริ่มต้น" + +#: editor/editor_node.cpp +msgid "" +"No main scene has ever been defined, select one?\n" +"You can change it later in later in \"Project Settings\" under the " +"'application' category." +msgstr "" +"ยังไม่ได้กำหนดฉากเริ่มต้น กำหนดตอนนี้?\n" +"สามารถเปลี่ยนได้ภายหลังที่ \"ตัวเลือกโปรเจกต์\" หัวข้อย่อย 'application'" + +#: editor/editor_node.cpp +msgid "" +"Selected scene '%s' does not exist, select a valid one?\n" +"You can change it later in \"Project Settings\" under the 'application' " +"category." +msgstr "" +"ไม่มีฉาก '%s' ที่เลือกไว้ เลือกใหม่ตอนนี้?\n" +"สามารถเปลี่ยนได้ภายหลังที่ \"ตัวเลือกโปรเจกต์\" หัวข้อย่อย 'application'" + +#: editor/editor_node.cpp +msgid "" +"Selected scene '%s' is not a scene file, select a valid one?\n" +"You can change it later in \"Project Settings\" under the 'application' " +"category." +msgstr "" +"'%s' ไม่ใช่ไฟล์ฉาก เลือกใหม่ตอนนี้?\n" +"สามารถเปลี่ยนได้ภายหลังที่ \"ตัวเลือกโปรเจกต์\" หัวข้อย่อย 'application'" + +#: editor/editor_node.cpp +msgid "Current scene was never saved, please save it prior to running." +msgstr "ฉากปัจจุบันยังไม่ได้บันทึก กรุณาบันทึกก่อนเริ่มโปรแกรม" + +#: editor/editor_node.cpp +msgid "Could not start subprocess!" +msgstr "" + +#: editor/editor_node.cpp +msgid "Open Scene" +msgstr "เปิดไฟล์ฉาก" + +#: editor/editor_node.cpp +msgid "Open Base Scene" +msgstr "เปิดไฟล์ฉากที่ใช้สืบทอด" + +#: editor/editor_node.cpp +#, fuzzy +msgid "Quick Open Scene.." +msgstr "เปิดไฟล์ฉากด่วน.." + +#: editor/editor_node.cpp +#, fuzzy +msgid "Quick Open Script.." +msgstr "เปิดไฟล์สคริปต์ด่วน.." + +#: editor/editor_node.cpp +msgid "Yes" +msgstr "ใช่" + +#: editor/editor_node.cpp +msgid "Close scene? (Unsaved changes will be lost)" +msgstr "ปิดไฟล์ฉาก? (การแก้ไขที่ไม่ได้บันทึกจะสูญหาย)" + +#: editor/editor_node.cpp +msgid "Save Scene As.." +msgstr "บันทึกฉากเป็น.." + +#: editor/editor_node.cpp +msgid "This scene has never been saved. Save before running?" +msgstr "ฉากนี้ยังไม่ได้บันทึก บันทึกก่อนเริ่ม?" + +#: editor/editor_node.cpp +msgid "Export Mesh Library" +msgstr "ส่งออก Mesh Library" + +#: editor/editor_node.cpp +msgid "Export Tile Set" +msgstr "ส่งออก Tile Set" + +#: editor/editor_node.cpp +msgid "Quit" +msgstr "ออก" + +#: editor/editor_node.cpp +#, fuzzy +msgid "Exit the editor?" +msgstr "ออกโปรแกรม?" + +#: editor/editor_node.cpp +msgid "Current scene not saved. Open anyway?" +msgstr "ฉากปัจจุบันยังไม่ได้บันทึก จะเปิดไฟล์หรือไม่?" + +#: editor/editor_node.cpp +msgid "Can't reload a scene that was never saved." +msgstr "ฉากยังไม่ได้บันทึก ไม่สามารถโหลดใหม่ได้" + +#: editor/editor_node.cpp +#, fuzzy +msgid "Revert" +msgstr "คืนกลับ" + +#: editor/editor_node.cpp +#, fuzzy +msgid "This action cannot be undone. Revert anyway?" +msgstr "การคืนกลับไม่สามารถยกเลิกได้ คืนกลับ?" + +#: editor/editor_node.cpp +msgid "Quick Run Scene.." +msgstr "เริ่มฉากด่วน.." + +#: editor/editor_node.cpp +msgid "" +"Open Project Manager? \n" +"(Unsaved changes will be lost)" +msgstr "" +"เปิดตัวจัดการโปรเจกต์?\n" +"(การแก้ไขที่ไม่ได้บันทึกจะสูญหาย)" + +#: editor/editor_node.cpp +msgid "Pick a Main Scene" +msgstr "เลือกฉากเริ่มต้น" + +#: editor/editor_node.cpp +msgid "" +"Scene '%s' was automatically imported, so it can't be modified.\n" +"To make changes to it, a new inherited scene can be created." +msgstr "" + +#: editor/editor_node.cpp editor/plugins/canvas_item_editor_plugin.cpp +#: editor/scene_tree_dock.cpp editor/script_create_dialog.cpp +msgid "Ugh" +msgstr "เอ่อะ" + +#: editor/editor_node.cpp +msgid "" +"Error loading scene, it must be inside the project path. Use 'Import' to " +"open the scene, then save it inside the project path." +msgstr "" +"ผิดพลาดขณะโหลดฉาก ฉากต้องอยู่ในโฟลเดอร์โปรเจกต์ ใช้ 'Import' เพื่อเปิดไฟล์ฉาก " +"แล้วบันทึกลงในโฟลเดอร์โปรเจกต์" + +#: editor/editor_node.cpp +msgid "Error loading scene." +msgstr "ผิดพลาดขณะโหลดฉาก" + +#: editor/editor_node.cpp +msgid "Scene '%s' has broken dependencies:" +msgstr "ฉาก '%s' มีการอ้างอิงสูญหาย:" + +#: editor/editor_node.cpp +#, fuzzy +msgid "Save Layout" +msgstr "บันทึกเลย์เอาต์" + +#: editor/editor_node.cpp +#, fuzzy +msgid "Delete Layout" +msgstr "ลบเลย์เอาต์" + +#: editor/editor_node.cpp +msgid "Switch Scene Tab" +msgstr "สลับฉาก" + +#: editor/editor_node.cpp +#, fuzzy +msgid "%d more file(s)" +msgstr "และอีก %d ไฟล์" + +#: editor/editor_node.cpp +#, fuzzy +msgid "%d more file(s) or folder(s)" +msgstr "และอีก %d ไฟล์หรือโฟลเดอร์" + +#: editor/editor_node.cpp editor/io_plugins/editor_scene_import_plugin.cpp +#, fuzzy +msgid "Scene" +msgstr "ฉาก" + +#: editor/editor_node.cpp +msgid "Go to previously opened scene." +msgstr "ไปยังฉากที่เพิ่งเปิด" + +#: editor/editor_node.cpp +#, fuzzy +msgid "Next tab" +msgstr "แท็บต่อไป" + +#: editor/editor_node.cpp +#, fuzzy +msgid "Previous tab" +msgstr "แท็บก่อนหน้า" + +#: editor/editor_node.cpp +#, fuzzy +msgid "Filter Files.." +msgstr "กรองไฟล์ด่วน.." + +#: editor/editor_node.cpp +msgid "Operations with scene files." +msgstr "การจัดการกับไฟล์ฉาก" + +#: editor/editor_node.cpp +msgid "New Scene" +msgstr "ฉากใหม่" + +#: editor/editor_node.cpp +msgid "New Inherited Scene.." +msgstr "สืบทอดฉากใหม่.." + +#: editor/editor_node.cpp +msgid "Open Scene.." +msgstr "เปิดไฟล์ฉาก.." + +#: editor/editor_node.cpp +msgid "Save Scene" +msgstr "บันทึกฉาก" + +#: editor/editor_node.cpp +msgid "Save all Scenes" +msgstr "บันทึกทุกฉาก" + +#: editor/editor_node.cpp +msgid "Close Scene" +msgstr "ปิดไฟล์ฉาก" + +#: editor/editor_node.cpp +msgid "Close Goto Prev. Scene" +msgstr "ปิดไปยังฉากก่อนหน้า" + +#: editor/editor_node.cpp +msgid "Open Recent" +msgstr "เปิดไฟล์ล่าสุด" + +#: editor/editor_node.cpp +msgid "Convert To.." +msgstr "แปลงเป็น.." + +#: editor/editor_node.cpp +msgid "MeshLibrary.." +msgstr "M" + +#: editor/editor_node.cpp +msgid "TileSet.." +msgstr "" + +#: editor/editor_node.cpp editor/plugins/script_text_editor.cpp +#: editor/plugins/shader_editor_plugin.cpp scene/gui/line_edit.cpp +#: scene/gui/text_edit.cpp +#, fuzzy +msgid "Undo" +msgstr "เลิกทำ" + +#: editor/editor_node.cpp editor/plugins/script_text_editor.cpp +#: editor/plugins/shader_editor_plugin.cpp +#, fuzzy +msgid "Redo" +msgstr "ทำซ้ำ" + +#: editor/editor_node.cpp +msgid "Run Script" +msgstr "รันสคริปต์" + +#: editor/editor_node.cpp +msgid "Project Settings" +msgstr "ตัวเลือกโปรเจกต์" + +#: editor/editor_node.cpp +msgid "Revert Scene" +msgstr "คืนกลับฉาก" + +#: editor/editor_node.cpp +msgid "Quit to Project List" +msgstr "ปิดและกลับสู่รายชื่อโปรเจกต์" + +#: editor/editor_node.cpp +#, fuzzy +msgid "Distraction Free Mode" +msgstr "โหมดไร้สิ่งรบกวน" + +#: editor/editor_node.cpp +msgid "Import assets to the project." +msgstr "นำเข้าไฟล์มายังโปรเจกต์" + +#: editor/editor_node.cpp editor/io_plugins/editor_bitmask_import_plugin.cpp +#: editor/io_plugins/editor_font_import_plugin.cpp +#: editor/io_plugins/editor_mesh_import_plugin.cpp +#: editor/io_plugins/editor_sample_import_plugin.cpp +#: editor/io_plugins/editor_scene_import_plugin.cpp +#: editor/io_plugins/editor_texture_import_plugin.cpp +#: editor/io_plugins/editor_translation_import_plugin.cpp +#: editor/project_manager.cpp +#, fuzzy +msgid "Import" +msgstr "นำเข้า" + +#: editor/editor_node.cpp +msgid "Miscellaneous project or scene-wide tools." +msgstr "" + +#: editor/editor_node.cpp +msgid "Tools" +msgstr "เครื่องมือ" + +#: editor/editor_node.cpp +msgid "Export the project to many platforms." +msgstr "ส่งออกโปรเจกต์ไปยังแพลตฟอร์มต่าง ๆ" + +#: editor/editor_node.cpp editor/project_export.cpp +msgid "Export" +msgstr "ส่งออก" + +#: editor/editor_node.cpp +msgid "Play the project." +msgstr "เล่นโปรเจกต์" + +#: editor/editor_node.cpp editor/plugins/sample_library_editor_plugin.cpp +msgid "Play" +msgstr "เล่น" + +#: editor/editor_node.cpp +msgid "Pause the scene" +msgstr "หยุดชั่วคราว" + +#: editor/editor_node.cpp +msgid "Pause Scene" +msgstr "หยุดชั่วคราว" + +#: editor/editor_node.cpp +msgid "Stop the scene." +msgstr "หยุด" + +#: editor/editor_node.cpp editor/plugins/sample_library_editor_plugin.cpp +msgid "Stop" +msgstr "หยุด" + +#: editor/editor_node.cpp +msgid "Play the edited scene." +msgstr "เล่นฉากปัจจุบัน" + +#: editor/editor_node.cpp +msgid "Play Scene" +msgstr "เล่น" + +#: editor/editor_node.cpp +msgid "Play custom scene" +msgstr "เลือกเล่นฉาก" + +#: editor/editor_node.cpp +msgid "Play Custom Scene" +msgstr "เลือกเล่นฉาก" + +#: editor/editor_node.cpp +msgid "Debug options" +msgstr "ตัวเลือกดีบัค" + +#: editor/editor_node.cpp +msgid "Deploy with Remote Debug" +msgstr "ส่งออกด้วยรีโมทดีบัค" + +#: editor/editor_node.cpp +msgid "" +"When exporting or deploying, the resulting executable will attempt to " +"connect to the IP of this computer in order to be debugged." +msgstr "เมื่อส่งออก โปรแกรมจะพยายามเชื่อมต่อมายังคอมพิวเตอร์เครื่องนี้เพื่อทำการดีบัค" + +#: editor/editor_node.cpp +msgid "Small Deploy with Network FS" +msgstr "ส่งออกโดยใช้ระบบไฟล์เครือข่าย" + +#: editor/editor_node.cpp +msgid "" +"When this option is enabled, export or deploy will produce a minimal " +"executable.\n" +"The filesystem will be provided from the project by the editor over the " +"network.\n" +"On Android, deploy will use the USB cable for faster performance. This " +"option speeds up testing for games with a large footprint." +msgstr "" +"ถ้าเปิดตัวเลือกนี้ โปรแกรมที่ส่งออกจะมีขนาดเล็ก\n" +"ระบบไฟล์จะอยู่บนเครือข่าย\n" +"บน Android การส่งออกจะใช้ USB เพื่อประสิทธิภาพที่ดีกว่า " +"ตัวเลือกนี้จะช่วยในการทดสอบเกมที่มีขนาดใหญ่" + +#: editor/editor_node.cpp +msgid "Visible Collision Shapes" +msgstr "รูปทรงกายภาพมองเห็นได้" + +#: editor/editor_node.cpp +msgid "" +"Collision shapes and raycast nodes (for 2D and 3D) will be visible on the " +"running game if this option is turned on." +msgstr "รูปทรงกายภาพและรังสี (2D และ 3D) จะมองเห็นได้ขณะเริ่มโปรแกรมถ้าเปิดตัวเลือกนี้" + +#: editor/editor_node.cpp +msgid "Visible Navigation" +msgstr "เส้นนำทางมองเห็นได้" + +#: editor/editor_node.cpp +msgid "" +"Navigation meshes and polygons will be visible on the running game if this " +"option is turned on." +msgstr "รูปทรงที่มีเส้นนำทางจะมองเห็นได้เมื่อเริ่มโปรแกรมถ้าเปิดตัวเลือกนี้" + +#: editor/editor_node.cpp +msgid "Sync Scene Changes" +msgstr "ซิงค์การเปลี่ยนแปลงฉาก" + +#: editor/editor_node.cpp +msgid "" +"When this option is turned on, any changes made to the scene in the editor " +"will be replicated in the running game.\n" +"When used remotely on a device, this is more efficient with network " +"filesystem." +msgstr "" +"ถ้าเปิดตัวเลือกนี้ โปรแกรมที่รันอยู่จะได้รับการแก้ไขทันที\n" +"เมื่อใช้กับอุปกรณ์แบบรีโมท จะดีกว่าถ้าเปิดระบบไฟล์เครือข่ายด้วย" + +#: editor/editor_node.cpp +#, fuzzy +msgid "Sync Script Changes" +msgstr "ซิงค์การแก้ไขสคริปต์" + +#: editor/editor_node.cpp +msgid "" +"When this option is turned on, any script that is saved will be reloaded on " +"the running game.\n" +"When used remotely on a device, this is more efficient with network " +"filesystem." +msgstr "" +"เมื่อเปิดตัวเลือกนี้ สคริปต์ที่บันทึกจะโหลดในเกมทันที\n" +"ถ้าใช้กับอุปกรณ์รีโมท จะดีกว่าถ้าเปิดระบบไฟล์เครือข่ายด้วย" + +#: editor/editor_node.cpp editor/plugins/spatial_editor_plugin.cpp +msgid "Settings" +msgstr "ตัวเลือก" + +#: editor/editor_node.cpp editor/settings_config_dialog.cpp +msgid "Editor Settings" +msgstr "ตัวเลือกโปรแกรมสร้างเกม" + +#: editor/editor_node.cpp +msgid "Editor Layout" +msgstr "เลย์เอาต์โปรแกรม" + +#: editor/editor_node.cpp +msgid "Toggle Fullscreen" +msgstr "สลับเต็มจอ" + +#: editor/editor_node.cpp editor/project_export.cpp +#, fuzzy +msgid "Manage Export Templates" +msgstr "กำลังโหลดแม่แบบส่งออก" + +#: editor/editor_node.cpp +#, fuzzy +msgid "About" +msgstr "เกี่ยวกับ" + +#: editor/editor_node.cpp +msgid "Alerts when an external resource has changed." +msgstr "เตือนเมื่อมีการแก้ไขรีซอร์สภายนอก" + +#: editor/editor_node.cpp +#, fuzzy +msgid "Spins when the editor window repaints!" +msgstr "หมุนเมื่อมีการวาดหน้าต่างโปรแกรมใหม่!" + +#: editor/editor_node.cpp +msgid "Update Always" +msgstr "อัพเดทตลอดเวลา" + +#: editor/editor_node.cpp +msgid "Update Changes" +msgstr "อัพเดทเมื่อเปลี่ยนแปลง" + +#: editor/editor_node.cpp +msgid "Disable Update Spinner" +msgstr "ปิดการอัพเดทตัวหมุน" + +#: editor/editor_node.cpp +msgid "Inspector" +msgstr "ตัวตรวจสอบ" + +#: editor/editor_node.cpp +msgid "Create a new resource in memory and edit it." +msgstr "สร้างรีซอร์สใหม่ในหน่วยความจำและทำการปรับแต่ง" + +#: editor/editor_node.cpp +msgid "Load an existing resource from disk and edit it." +msgstr "โหลดรีซอร์สที่มีอยู่แล้วในดิสก์และทำการปรับแต่ง" + +#: editor/editor_node.cpp +msgid "Save the currently edited resource." +msgstr "บันทึกรีซอร์สที่กำลังปรับแต่ง" + +#: editor/editor_node.cpp editor/plugins/script_editor_plugin.cpp +msgid "Save As.." +msgstr "บันทึกเป็น.." + +#: editor/editor_node.cpp +msgid "Go to the previous edited object in history." +msgstr "ไปยังวัตถุที่ปรับแต่งก่อนหน้า" + +#: editor/editor_node.cpp +msgid "Go to the next edited object in history." +msgstr "ไปยังวัตถุที่ปรับแต่งต่อไป" + +#: editor/editor_node.cpp +msgid "History of recently edited objects." +msgstr "ประวัติการปรับแต่งวัตถุ" + +#: editor/editor_node.cpp +msgid "Object properties." +msgstr "คุณสมบัติวัตถุ" + +#: editor/editor_node.cpp +msgid "FileSystem" +msgstr "ระบบไฟล์" + +#: editor/editor_node.cpp editor/node_dock.cpp +msgid "Node" +msgstr "โหนด" + +#: editor/editor_node.cpp +#, fuzzy +msgid "Output" +msgstr "เอาท์พุต" + +#: editor/editor_node.cpp editor/editor_reimport_dialog.cpp +msgid "Re-Import" +msgstr "นำเข้าอีกครั้ง" + +#: editor/editor_node.cpp editor/editor_plugin_settings.cpp +msgid "Update" +msgstr "อัพเดท" + +#: editor/editor_node.cpp +msgid "Thanks from the Godot community!" +msgstr "ขอขอบคุณจากชุมชนผู้ใช้ Godot!" + +#: editor/editor_node.cpp +msgid "Thanks!" +msgstr "ขอบคุณ!" + +#: editor/editor_node.cpp +msgid "Import Templates From ZIP File" +msgstr "นำเข้าแม่แบบจากไฟล์ ZIP" + +#: editor/editor_node.cpp +msgid "Export Project" +msgstr "ส่งออกโปรเจกต์" + +#: editor/editor_node.cpp +#, fuzzy +msgid "Export Library" +msgstr "ส่งออกไลบรารี" + +#: editor/editor_node.cpp +msgid "Merge With Existing" +msgstr "รวมกับที่มีอยู่เดิม" + +#: editor/editor_node.cpp +msgid "Password:" +msgstr "รหัสผ่าน:" + +#: editor/editor_node.cpp +msgid "Open & Run a Script" +msgstr "เปิดและรันสคริปต์" + +#: editor/editor_node.cpp +msgid "Load Errors" +msgstr "โหลดผิดพลาด" + +#: editor/editor_plugin_settings.cpp +msgid "Installed Plugins:" +msgstr "ปลั๊กอินที่ติดตั้งแล้ว:" + +#: editor/editor_plugin_settings.cpp +msgid "Version:" +msgstr "รุ่น:" + +#: editor/editor_plugin_settings.cpp +msgid "Author:" +msgstr "โดย:" + +#: editor/editor_plugin_settings.cpp +msgid "Status:" +msgstr "สถานะ:" + +#: editor/editor_profiler.cpp +msgid "Stop Profiling" +msgstr "หยุดบันทึก" + +#: editor/editor_profiler.cpp +msgid "Start Profiling" +msgstr "เริ่มบันทึก" + +#: editor/editor_profiler.cpp +msgid "Measure:" +msgstr "วัด:" + +#: editor/editor_profiler.cpp +msgid "Frame Time (sec)" +msgstr "เวลาเฟรม (วินาที)" + +#: editor/editor_profiler.cpp +msgid "Average Time (sec)" +msgstr "เวลาเฉลี่ย (วินาที)" + +#: editor/editor_profiler.cpp +msgid "Frame %" +msgstr "เฟรม %" + +#: editor/editor_profiler.cpp +msgid "Fixed Frame %" +msgstr "เฟรมคงที่ %" + +#: editor/editor_profiler.cpp editor/script_editor_debugger.cpp +msgid "Time:" +msgstr "เวลา:" + +#: editor/editor_profiler.cpp +msgid "Inclusive" +msgstr "" + +#: editor/editor_profiler.cpp +msgid "Self" +msgstr "" + +#: editor/editor_profiler.cpp +msgid "Frame #:" +msgstr "เฟรมที่:" + +#: editor/editor_reimport_dialog.cpp +msgid "Please wait for scan to complete." +msgstr "กรุณารอให้การสแกนเสร็จ" + +#: editor/editor_reimport_dialog.cpp +msgid "Current scene must be saved to re-import." +msgstr "ฉากปัจจุบันต้องบันทึกก่อนนำเข้าอีกครั้ง" + +#: editor/editor_reimport_dialog.cpp +msgid "Save & Re-Import" +msgstr "บันทึกและนำเข้าอีกครั้ง" + +#: editor/editor_reimport_dialog.cpp +msgid "Re-Importing" +msgstr "นำเข้าอีกครั้ง" + +#: editor/editor_reimport_dialog.cpp +msgid "Re-Import Changed Resources" +msgstr "นำเข้ารีซอร์สที่แก้ไขอีกครั้ง" + +#: editor/editor_run_script.cpp +msgid "Write your logic in the _run() method." +msgstr "เขียนโปรแกรมในเมท็อด _run()" + +#: editor/editor_run_script.cpp +msgid "There is an edited scene already." +msgstr "มีฉากที่แก้ไขอยู่แล้ว" + +#: editor/editor_run_script.cpp +msgid "Couldn't instance script:" +msgstr "สร้างอินสแตนซ์ของสคริปต์ไม่ได้:" + +#: editor/editor_run_script.cpp +msgid "Did you forget the 'tool' keyword?" +msgstr "ลืมคีย์เวิร์ด 'tool' หรือเปล่า?" + +#: editor/editor_run_script.cpp +msgid "Couldn't run script:" +msgstr "รันสคริปต์ไม่ได้:" + +#: editor/editor_run_script.cpp +msgid "Did you forget the '_run' method?" +msgstr "ลืมใส่เมท็อด '_run' หรือเปล่า?" + +#: editor/editor_settings.cpp +msgid "Default (Same as Editor)" +msgstr "ค่าเริ่มต้น (เหมือนกับโปรแกรมสร้างเกม)" + +#: editor/editor_sub_scene.cpp +msgid "Select Node(s) to Import" +msgstr "เลือกโหนดเพื่อนำเข้า" + +#: editor/editor_sub_scene.cpp +msgid "Scene Path:" +msgstr "ตำแหน่งที่อยู่ฉาก:" + +#: editor/editor_sub_scene.cpp +msgid "Import From Node:" +msgstr "นำเข้าจากโหนด:" + +#: editor/export_template_manager.cpp +#, fuzzy +msgid "Re-Download" +msgstr "โหลดใหม่" + +#: editor/export_template_manager.cpp +#, fuzzy +msgid "Uninstall" +msgstr "ติดตั้ง" + +#: editor/export_template_manager.cpp +#, fuzzy +msgid "(Installed)" +msgstr "ติดตั้ง" + +#: editor/export_template_manager.cpp +#, fuzzy +msgid "Download" +msgstr "ลง" + +#: editor/export_template_manager.cpp +msgid "(Missing)" +msgstr "" + +#: editor/export_template_manager.cpp +#, fuzzy +msgid "(Current)" +msgstr "ปัจจุบัน:" + +#: editor/export_template_manager.cpp +msgid "Remove template version '%s'?" +msgstr "" + +#: editor/export_template_manager.cpp +msgid "Can't open export templates zip." +msgstr "เปิดไฟล์ zip แม่แบบส่งออกไม่ได้" + +#: editor/export_template_manager.cpp +msgid "Invalid version.txt format inside templates." +msgstr "" + +#: editor/export_template_manager.cpp +msgid "" +"Invalid version.txt format inside templates. Revision is not a valid " +"identifier." +msgstr "" + +#: editor/export_template_manager.cpp +msgid "No version.txt found inside templates." +msgstr "" + +#: editor/export_template_manager.cpp +#, fuzzy +msgid "Error creating path for templates:\n" +msgstr "ผิดพลาดขณะบันทึก atlas:" + +#: editor/export_template_manager.cpp +#, fuzzy +msgid "Extracting Export Templates" +msgstr "กำลังโหลดแม่แบบส่งออก" + +#: editor/export_template_manager.cpp +msgid "Importing:" +msgstr "นำเข้า:" + +#: editor/export_template_manager.cpp +msgid "Loading Export Templates" +msgstr "กำลังโหลดแม่แบบส่งออก" + +#: editor/export_template_manager.cpp +#, fuzzy +msgid "Current Version:" +msgstr "ฉากปัจจุบัน" + +#: editor/export_template_manager.cpp +#, fuzzy +msgid "Installed Versions:" +msgstr "ปลั๊กอินที่ติดตั้งแล้ว:" + +#: editor/export_template_manager.cpp +#, fuzzy +msgid "Install From File" +msgstr "ติดตั้งโปรเจกต์:" + +#: editor/export_template_manager.cpp +#, fuzzy +msgid "Remove Template" +msgstr "ลบไอเทม" + +#: editor/export_template_manager.cpp +#, fuzzy +msgid "Select template file" +msgstr "ลบไฟล์ที่เลือก?" + +#: editor/export_template_manager.cpp +#, fuzzy +msgid "Export Template Manager" +msgstr "กำลังโหลดแม่แบบส่งออก" + +#: editor/file_type_cache.cpp +msgid "Can't open file_type_cache.cch for writing, not saving file type cache!" +msgstr "เปิดไฟล์ file_type_cache.cch เพื่อเขียนไม่ได้ จะไม่บันทึกแคชของชนิดไฟล์!" + +#: editor/filesystem_dock.cpp +msgid "Cannot navigate to '" +msgstr "" + +#: editor/filesystem_dock.cpp +msgid "Same source and destination files, doing nothing." +msgstr "ไฟล์ต้นทางและปลายทางเหมือนกัน ไม่ทำอะไร" + +#: editor/filesystem_dock.cpp +msgid "Same source and destination paths, doing nothing." +msgstr "ไฟล์ต้นทางและปลายทางอยู่ที่เดียวกัน ไม่ทำอะไร" + +#: editor/filesystem_dock.cpp +msgid "Can't move directories to within themselves." +msgstr "ย้ายโฟลเดอร์เข้ามาในตัวเองไม่ได้" + +#: editor/filesystem_dock.cpp +msgid "Can't operate on '..'" +msgstr "ทำงานใน '..' ไม่ได้" + +#: editor/filesystem_dock.cpp +msgid "Pick New Name and Location For:" +msgstr "เลือกชื่อและตำแหน่งที่อยู่ใหม่ให้กับ:" + +#: editor/filesystem_dock.cpp +msgid "No files selected!" +msgstr "ไม่ได้เลือกไฟล์ไว้!" + +#: editor/filesystem_dock.cpp +msgid "Expand all" +msgstr "" + +#: editor/filesystem_dock.cpp +msgid "Collapse all" +msgstr "" + +#: editor/filesystem_dock.cpp +msgid "Instance" +msgstr "อินสแตนซ์" + +#: editor/filesystem_dock.cpp +msgid "Edit Dependencies.." +msgstr "แก้ไขการอ้างอิง.." + +#: editor/filesystem_dock.cpp +msgid "View Owners.." +msgstr "ดูเจ้าของ.." + +#: editor/filesystem_dock.cpp +msgid "Copy Path" +msgstr "คัดลอกตำแหน่ง" + +#: editor/filesystem_dock.cpp +msgid "Rename or Move.." +msgstr "เปลี่ยนชื่อหรือย้าย.." + +#: editor/filesystem_dock.cpp +msgid "Move To.." +msgstr "ย้ายไป.." + +#: editor/filesystem_dock.cpp +msgid "Info" +msgstr "ข้อมูล" + +#: editor/filesystem_dock.cpp +msgid "Show In File Manager" +msgstr "แสดงในตัวจัดการไฟล์" + +#: editor/filesystem_dock.cpp +msgid "Re-Import.." +msgstr "นำเข้าอีกครั้ง.." + +#: editor/filesystem_dock.cpp +msgid "Previous Directory" +msgstr "โฟลเดอร์ก่อนหน้า" + +#: editor/filesystem_dock.cpp +msgid "Next Directory" +msgstr "โฟลเดอร์ถัดไป" + +#: editor/filesystem_dock.cpp +msgid "Re-Scan Filesystem" +msgstr "สแกนระบบไฟล์ใหม่" + +#: editor/filesystem_dock.cpp +msgid "Toggle folder status as Favorite" +msgstr "สลับการเป็นโฟลเดอร์ที่ชื่นชอบ" + +#: editor/filesystem_dock.cpp +msgid "Instance the selected scene(s) as child of the selected node." +msgstr "อินสแตนซ์ฉากที่เลือกให้เป็นโหนดลูกของโหนดที่เลือก" + +#: editor/filesystem_dock.cpp +msgid "Move" +msgstr "ย้าย" + +#: editor/groups_editor.cpp +msgid "Add to Group" +msgstr "เพิ่มไปยังกลุ่ม" + +#: editor/groups_editor.cpp +msgid "Remove from Group" +msgstr "ลบออกจากกลุ่ม" + +#: editor/import/resource_importer_obj.cpp +#: editor/io_plugins/editor_mesh_import_plugin.cpp +msgid "Surface %d" +msgstr "%d พื้นผิว" + +#: editor/import/resource_importer_scene.cpp +#: editor/io_plugins/editor_scene_import_plugin.cpp +#: editor/plugins/cube_grid_theme_editor_plugin.cpp +msgid "Import Scene" +msgstr "นำเข้าฉาก" + +#: editor/import/resource_importer_scene.cpp +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Importing Scene.." +msgstr "กำลังนำเข้าฉาก.." + +#: editor/import/resource_importer_scene.cpp +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Running Custom Script.." +msgstr "กำลังรันสคริปต์.." + +#: editor/import/resource_importer_scene.cpp +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Couldn't load post-import script:" +msgstr "โหลดสคริปต์หลังนำเข้าไม่ได้:" + +#: editor/import/resource_importer_scene.cpp +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Invalid/broken script for post-import (check console):" +msgstr "สคริปต์หลังนำเข้าผิดพลาด (ตรวจสอบคอนโซล):" + +#: editor/import/resource_importer_scene.cpp +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Error running post-import script:" +msgstr "ผิดพลาดขณะรันสคริปต์หลังนำเข้า:" + +#: editor/import/resource_importer_scene.cpp +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Saving.." +msgstr "กำลังบันทึก.." + +#: editor/import_dock.cpp +#, fuzzy +msgid " Files" +msgstr "ไฟล์" + +#: editor/import_dock.cpp +#, fuzzy +msgid "Import As:" +msgstr "นำเข้า" + +#: editor/import_dock.cpp editor/property_editor.cpp +msgid "Preset.." +msgstr "" + +#: editor/import_dock.cpp +#, fuzzy +msgid "Reimport" +msgstr "นำเข้าอีกครั้ง" + +#: editor/io_plugins/editor_bitmask_import_plugin.cpp +msgid "No bit masks to import!" +msgstr "ไม่มีบิตแมสก์ให้นำเข้า!" + +#: editor/io_plugins/editor_bitmask_import_plugin.cpp +#: editor/io_plugins/editor_sample_import_plugin.cpp +#: editor/io_plugins/editor_scene_import_plugin.cpp +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Target path is empty." +msgstr "ตำแหน่งที่อยู่ว่างเปล่า" + +#: editor/io_plugins/editor_bitmask_import_plugin.cpp +#: editor/io_plugins/editor_sample_import_plugin.cpp +#: editor/io_plugins/editor_scene_import_plugin.cpp +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Target path must be a complete resource path." +msgstr "ต้องเป็นตำแหน่งที่อยู่แบบเต็ม" + +#: editor/io_plugins/editor_bitmask_import_plugin.cpp +#: editor/io_plugins/editor_sample_import_plugin.cpp +#: editor/io_plugins/editor_scene_import_plugin.cpp +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Target path must exist." +msgstr "ต้องมีตำแหน่งที่อยู่" + +#: editor/io_plugins/editor_bitmask_import_plugin.cpp +#: editor/io_plugins/editor_mesh_import_plugin.cpp +#: editor/io_plugins/editor_sample_import_plugin.cpp +msgid "Save path is empty!" +msgstr "ตำแหน่งบันทึกว่างเปล่า!" + +#: editor/io_plugins/editor_bitmask_import_plugin.cpp +msgid "Import BitMasks" +msgstr "นำเข้า BitMasks" + +#: editor/io_plugins/editor_bitmask_import_plugin.cpp +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Source Texture(s):" +msgstr "Texture ต้นฉบับ:" + +#: editor/io_plugins/editor_bitmask_import_plugin.cpp +#: editor/io_plugins/editor_mesh_import_plugin.cpp +#: editor/io_plugins/editor_sample_import_plugin.cpp +#: editor/io_plugins/editor_scene_import_plugin.cpp +#: editor/io_plugins/editor_texture_import_plugin.cpp +#: editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Target Path:" +msgstr "ตำแหน่งที่อยู่:" + +#: editor/io_plugins/editor_bitmask_import_plugin.cpp +#: editor/io_plugins/editor_font_import_plugin.cpp +#: editor/io_plugins/editor_sample_import_plugin.cpp +#: editor/io_plugins/editor_scene_import_plugin.cpp +#: editor/io_plugins/editor_texture_import_plugin.cpp +#: editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Accept" +msgstr "ยอมรับ" + +#: editor/io_plugins/editor_bitmask_import_plugin.cpp +msgid "Bit Mask" +msgstr "บิตแมสก์" + +#: editor/io_plugins/editor_font_import_plugin.cpp +msgid "No source font file!" +msgstr "ไม่ได้เลือกไฟล์ฟอนต์ต้นฉบับ!" + +#: editor/io_plugins/editor_font_import_plugin.cpp +msgid "No target font resource!" +msgstr "ไม่ได้เลือกว่าจะนำเข้ามาเป็นไฟล์ฟอนต์ชื่ออะไร!" + +#: editor/io_plugins/editor_font_import_plugin.cpp +msgid "" +"Invalid file extension.\n" +"Please use .fnt." +msgstr "" +"นามสกุลไม่ถูกต้อง\n" +"กรุณาใช้ .fnt" + +#: editor/io_plugins/editor_font_import_plugin.cpp +msgid "Can't load/process source font." +msgstr "ไม่สามารถโหลด/ประมวลผลฟอนต์ต้นฉบับ" + +#: editor/io_plugins/editor_font_import_plugin.cpp +msgid "Couldn't save font." +msgstr "บันทึกฟอนต์ไม่ได้" + +#: editor/io_plugins/editor_font_import_plugin.cpp +msgid "Source Font:" +msgstr "ฟอนต์ต้นฉบับ:" + +#: editor/io_plugins/editor_font_import_plugin.cpp +msgid "Source Font Size:" +msgstr "ขนาดฟอนต์ต้นฉบับ:" + +#: editor/io_plugins/editor_font_import_plugin.cpp +msgid "Dest Resource:" +msgstr "นำเข้ามาเป็นรีซอร์ส:" + +#: editor/io_plugins/editor_font_import_plugin.cpp +msgid "The quick brown fox jumps over the lazy dog." +msgstr "" + +#: editor/io_plugins/editor_font_import_plugin.cpp +msgid "Test:" +msgstr "ทดสอบ:" + +#: editor/io_plugins/editor_font_import_plugin.cpp +#: editor/io_plugins/editor_mesh_import_plugin.cpp +#: editor/io_plugins/editor_sample_import_plugin.cpp +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Options:" +msgstr "ตัวเลือก:" + +#: editor/io_plugins/editor_font_import_plugin.cpp +msgid "Font Import" +msgstr "นำเข้าฟอนต์" + +#: editor/io_plugins/editor_font_import_plugin.cpp +msgid "" +"This file is already a Godot font file, please supply a BMFont type file " +"instead." +msgstr "ไฟล์นี้เป็นฟอนต์ของ Godot อยู่แล้ว กรุณาเลือกฟอนต์ที่มาจาก BMFont" + +#: editor/io_plugins/editor_font_import_plugin.cpp +msgid "Failed opening as BMFont file." +msgstr "ผิดพลาดขณะเปิดไฟล์เป็น BMFont" + +#: editor/io_plugins/editor_font_import_plugin.cpp +#: scene/resources/dynamic_font.cpp +msgid "Error initializing FreeType." +msgstr "ผิดพลาดขณะเริ่มต้น FreeType" + +#: editor/io_plugins/editor_font_import_plugin.cpp +#: scene/resources/dynamic_font.cpp +#, fuzzy +msgid "Unknown font format." +msgstr "ไม่ทราบประเภทของฟอนต์" + +#: editor/io_plugins/editor_font_import_plugin.cpp +#: scene/resources/dynamic_font.cpp +msgid "Error loading font." +msgstr "ผิดพลาดขณะโหลดฟอนต์" + +#: editor/io_plugins/editor_font_import_plugin.cpp +#: scene/resources/dynamic_font.cpp +#, fuzzy +msgid "Invalid font size." +msgstr "ขนาดฟอนต์ผิดพลาด" + +#: editor/io_plugins/editor_font_import_plugin.cpp +#, fuzzy +msgid "Invalid font custom source." +msgstr "ต้นฉบับฟอนต์ที่กำหนดเองไม่ถูกต้อง" + +#: editor/io_plugins/editor_font_import_plugin.cpp +#: editor/plugins/theme_editor_plugin.cpp +msgid "Font" +msgstr "ฟอนต์" + +#: editor/io_plugins/editor_mesh_import_plugin.cpp +msgid "No meshes to import!" +msgstr "ไม่มี mesh ให้นำเข้า!" + +#: editor/io_plugins/editor_mesh_import_plugin.cpp +msgid "Single Mesh Import" +msgstr "นำเข้า Mesh เดี่ยว" + +#: editor/io_plugins/editor_mesh_import_plugin.cpp +msgid "Source Mesh(es):" +msgstr "Mesh ต้นฉบับ:" + +#: editor/io_plugins/editor_mesh_import_plugin.cpp +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Mesh" +msgstr "Mesh" + +#: editor/io_plugins/editor_sample_import_plugin.cpp +msgid "No samples to import!" +msgstr "ไม่มีไฟล์เสียงให้นำเข้า!" + +#: editor/io_plugins/editor_sample_import_plugin.cpp +msgid "Import Audio Samples" +msgstr "นำเข้าไฟล์เสียง" + +#: editor/io_plugins/editor_sample_import_plugin.cpp +msgid "Source Sample(s):" +msgstr "ไฟล์เสียงต้นฉบับ:" + +#: editor/io_plugins/editor_sample_import_plugin.cpp +msgid "Audio Sample" +msgstr "ไฟล์เสียง" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "New Clip" +msgstr "คลิปใหม่" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Animation Options" +msgstr "ตัวเลือกแอนิเมชัน" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Flags" +msgstr "ตัวเลือก" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Bake FPS:" +msgstr "" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Optimizer" +msgstr "ตัวเพิ่มประสิทธิภาพ" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Max Linear Error" +msgstr "ผิดพลาดเชิงเส้นมากที่สุด" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Max Angular Error" +msgstr "ผิดพลาดเชิงมุมมากที่สุด" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Max Angle" +msgstr "มุมมากสุด" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Clips" +msgstr "คลิป" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Start(s)" +msgstr "เริ่ม" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "End(s)" +msgstr "จบ" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Loop" +msgstr "วน" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Filters" +msgstr "ตัวกรอง" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Source path is empty." +msgstr "ที่อยู่ไฟล์ต้นฉบับว่างเปล่า" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Couldn't load post-import script." +msgstr "โหลดสคริปต์หลังนำเข้าไม่ได้" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Invalid/broken script for post-import." +msgstr "สคริปต์หลังนำเข้ามีข้อผิดพลาด" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Error importing scene." +msgstr "ผิดพลาดขณะนำเข้าฉาก" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Import 3D Scene" +msgstr "นำเข้าฉาก 3D" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Source Scene:" +msgstr "ฉากต้นฉบับ:" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Same as Target Scene" +msgstr "เหมือนกันกับฉากปลายทาง" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Shared" +msgstr "ใช้ร่วมกัน" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Target Texture Folder:" +msgstr "โฟลเดอร์ Texture ปลายทาง:" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Post-Process Script:" +msgstr "สคริปต์หลังประมวลผล:" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Custom Root Node Type:" +msgstr "ชนิดโหนดรากกำหนดเอง:" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Auto" +msgstr "อัตโนมัติ" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Root Node Name:" +msgstr "ชื่อโหนดราก:" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "The Following Files are Missing:" +msgstr "ไฟล์ต่อไปนี้หายไป:" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Import Anyway" +msgstr "ยืนยันนำเข้า" + +#: editor/io_plugins/editor_scene_import_plugin.cpp scene/gui/dialogs.cpp +msgid "Cancel" +msgstr "ยกเลิก" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Import & Open" +msgstr "นำเข้าและเปิด" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Edited scene has not been saved, open imported scene anyway?" +msgstr "ฉากปัจจุบันยังไม่ได้บันทึก ยืนยันเปิดไฟล์ฉากที่นำเข้า?" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Import Image:" +msgstr "นำเข้าไฟล์รูป:" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Can't import a file over itself:" +msgstr "นำเข้าไฟล์ทับตัวเองไม่ได้:" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "Couldn't localize path: %s (already local)" +msgstr "ทำที่อยู่ไฟล์ให้เป็นภายในไม่ได้: %s (เป็นภายในอยู่แล้ว)" + +#: editor/io_plugins/editor_scene_import_plugin.cpp +msgid "3D Scene Animation" +msgstr "แอนิเมชันฉาก 3D" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Uncompressed" +msgstr "ไม่บีบอัด" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Compress Lossless (PNG)" +msgstr "บีบอัดแบบไม่เสียคุณภาพ (PNG)" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Compress Lossy (WebP)" +msgstr "บีบอัดแบบเสียคุณภาพ (WebP)" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Compress (VRAM)" +msgstr "บีบอัด (VRAM)" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Texture Format" +msgstr "รูปแบบ Texture" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Texture Compression Quality (WebP):" +msgstr "คุณภาพการบีบอัด Texture (WebP):" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Texture Options" +msgstr "ตัวเลือก Texture" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Please specify some files!" +msgstr "กรุณาเลือกสักไฟล์!" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "At least one file needed for Atlas." +msgstr "Atlas ต้องการไฟล์อย่างน้อย 1 ไฟล์" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Error importing:" +msgstr "ผิดพลาดขณะนำเข้า:" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Only one file is required for large texture." +msgstr "Texture ขนาดใหญ่ต้องการแค่ไฟล์เดียว" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Max Texture Size:" +msgstr "ขนาด Texture ที่ใหญ่ที่สุด:" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Import Textures for Atlas (2D)" +msgstr "นำเข้า Texture สำหรับ Atlas (2D)" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Cell Size:" +msgstr "ขนาดเซลล์:" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Large Texture" +msgstr "Texture ขนาดใหญ่" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Import Large Textures (2D)" +msgstr "นำเข้า Texture ขนาดใหญ่ (2D)" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Source Texture" +msgstr "Texture ต้นฉบับ" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Base Atlas Texture" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Source Texture(s)" +msgstr "Texture ต้นฉบับ" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Import Textures for 2D" +msgstr "นำเข้า Texture สำหรับ 2D" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Import Textures for 3D" +msgstr "นำเข้า Texture สำหรับ 3D" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Import Textures" +msgstr "นำเข้า Texture" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "2D Texture" +msgstr "Texture 2D" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "3D Texture" +msgstr "Texture 3D" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Atlas Texture" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "" +"NOTICE: Importing 2D textures is not mandatory. Just copy png/jpg files to " +"the project." +msgstr "โปรดทราบ: ไม่จำเป็นต้องนำเข้า Texture 2D แค่คัดลอกไฟล์ png/jpg เข้าสู่โปรเจกต์" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Crop empty space." +msgstr "ครอบตัดพื้นที่ว่าง" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Texture" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Import Large Texture" +msgstr "นำเข้า Texture ขนาดใหญ่" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Load Source Image" +msgstr "โหลดรูปต้นฉบับ" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Slicing" +msgstr "ตัด" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Inserting" +msgstr "แทรก" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Saving" +msgstr "บันทึก" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Couldn't save large texture:" +msgstr "บันทึก Texture ขนาดใหญ่ไม่ได้:" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Build Atlas For:" +msgstr "สร้าง Atlas สำหรับ:" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Loading Image:" +msgstr "โหลดรูป:" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Couldn't load image:" +msgstr "โหลดรูปไม่ได้:" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Converting Images" +msgstr "กำลังแปลงรูป" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Cropping Images" +msgstr "ครอบตัดรูป" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Blitting Images" +msgstr "" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Couldn't save atlas image:" +msgstr "บันทึก Atlas ไม่ได้:" + +#: editor/io_plugins/editor_texture_import_plugin.cpp +msgid "Couldn't save converted texture:" +msgstr "บันทึก Texture ที่แปลงแล้วไม่ได้:" + +#: editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Invalid source!" +msgstr "ต้นฉบับไม่ถูกต้อง!" + +#: editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Invalid translation source!" +msgstr "ต้นฉบับการแปลไม่ถูกต้อง!" + +#: editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Column" +msgstr "คอลัมน์" + +#: editor/io_plugins/editor_translation_import_plugin.cpp +#: editor/script_create_dialog.cpp +msgid "Language" +msgstr "ภาษา" + +#: editor/io_plugins/editor_translation_import_plugin.cpp +msgid "No items to import!" +msgstr "ไม่มีอะไรให้นำเข้า!" + +#: editor/io_plugins/editor_translation_import_plugin.cpp +msgid "No target path!" +msgstr "ไม่มีที่อยู่ปลายทาง!" + +#: editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Import Translations" +msgstr "นำเข้าการแปล" + +#: editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Couldn't import!" +msgstr "นำเข้าไม่ได้!" + +#: editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Import Translation" +msgstr "นำเข้าการแปล" + +#: editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Source CSV:" +msgstr "CSV ต้นฉบับ:" + +#: editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Ignore First Row" +msgstr "ไม่สนใจแถวแรก" + +#: editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Compress" +msgstr "บีบอัด" + +#: editor/io_plugins/editor_translation_import_plugin.cpp +#, fuzzy +msgid "Add to Project (godot.cfg)" +msgstr "เพิ่มเข้าโปรเจกต์ (engine.cfg)" + +#: editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Import Languages:" +msgstr "นำเข้าภาษา:" + +#: editor/io_plugins/editor_translation_import_plugin.cpp +msgid "Translation" +msgstr "การแปล" + +#: editor/multi_node_edit.cpp +msgid "MultiNode Set" +msgstr "กำหนด MultiNode" + +#: editor/node_dock.cpp +msgid "Groups" +msgstr "กลุ่ม" + +#: editor/node_dock.cpp +msgid "Select a Node to edit Signals and Groups." +msgstr "เลือกโหนดเพื่อแก้ไขสัญญาณและกลุ่ม" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Toggle Autoplay" +msgstr "เปิดปิดการเล่นอัตโนมัติ" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "New Animation Name:" +msgstr "ชื่อแอนิเมชันใหม่:" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "New Anim" +msgstr "แอนิเมชันใหม่" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Change Animation Name:" +msgstr "เปลี่ยนชื่อแอนิเมชัน:" + +#: editor/plugins/animation_player_editor_plugin.cpp +#, fuzzy +msgid "Delete Animation?" +msgstr "ทำซ้ำแอนิเมชัน" + +#: editor/plugins/animation_player_editor_plugin.cpp +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Remove Animation" +msgstr "ลบแอนิเมชัน" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "ERROR: Invalid animation name!" +msgstr "ผิดพลาด: ชื่อแอนิเมชันไม่ถูกต้อง!" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "ERROR: Animation name already exists!" +msgstr "ผิดพลาด: มีชื่อแอนิเมชันนี้อยู่แล้ว!" + +#: editor/plugins/animation_player_editor_plugin.cpp +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Rename Animation" +msgstr "เปลี่ยนชื่อแอนิเมชัน" + +#: editor/plugins/animation_player_editor_plugin.cpp +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Add Animation" +msgstr "เพิ่มแอนิเมชัน" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Blend Next Changed" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Change Blend Time" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Load Animation" +msgstr "โหลดแอนิเมชัน" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Duplicate Animation" +msgstr "ทำซ้ำแอนิเมชัน" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "ERROR: No animation to copy!" +msgstr "ผิดพลาด: ไม่มีแอนิเมชันให้คัดลอก!" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "ERROR: No animation resource on clipboard!" +msgstr "ผิดพลาด: ไม่มีแอนิเมชันในคลิปบอร์ด!" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Pasted Animation" +msgstr "วางแอนิเมชันแล้ว" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Paste Animation" +msgstr "วางแอนิเมชัน" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "ERROR: No animation to edit!" +msgstr "ผิดพลาด: ไม่มีแอนิเมชันให้แก้ไข!" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Play selected animation backwards from current pos. (A)" +msgstr "เล่นแอนิเมชันที่เลือกย้อนหลังจากตำแหน่งปัจจุบัน (A)" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Play selected animation backwards from end. (Shift+A)" +msgstr "เล่นแอนิเมชันที่เลือกย้อนหลังจากท้ายสุด (Shift+A)" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Stop animation playback. (S)" +msgstr "หยุดการเล่นแอนิเมชัน (S)" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Play selected animation from start. (Shift+D)" +msgstr "เล่นแอนิเมชันที่เลือกจากเริ่มต้น (Shift+D)" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Play selected animation from current pos. (D)" +msgstr "เล่นแอนิเมชันที่เลือกจากตำแหน่งปัจจุบัน (D)" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Animation position (in seconds)." +msgstr "ตำแหน่งแอนิเมชัน (วินาที)" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Scale animation playback globally for the node." +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Create new animation in player." +msgstr "สร้างแอนิเมชันใหม่ในตัวเล่น" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Load animation from disk." +msgstr "โหลดแอนิเมชันจากดิสก์" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Load an animation from disk." +msgstr "โหลดแอนิเมชันจากดิสก์" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Save the current animation" +msgstr "บันทึกแอนิเมชัน" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Display list of animations in player." +msgstr "แสดงรายชื่อแอนิเมชันในตัวเล่น" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Autoplay on Load" +msgstr "เล่นอัตโนมัติเมื่อโหลด" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Edit Target Blend Times" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Animation Tools" +msgstr "เครื่องมือแอนิเมชัน" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Copy Animation" +msgstr "คัดลอกแอนิเมชัน" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Create New Animation" +msgstr "สร้างแอนิเมชันใหม่" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Animation Name:" +msgstr "ชื่อแอนิเมชัน:" + +#: editor/plugins/animation_player_editor_plugin.cpp +#: editor/plugins/resource_preloader_editor_plugin.cpp +#: editor/plugins/sample_library_editor_plugin.cpp +#: editor/plugins/sprite_frames_editor_plugin.cpp editor/property_editor.cpp +#: editor/script_create_dialog.cpp +msgid "Error!" +msgstr "ผิดพลาด!" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Blend Times:" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Next (Auto Queue):" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +msgid "Cross-Animation Blend Times" +msgstr "" + +#: editor/plugins/animation_player_editor_plugin.cpp +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Animation" +msgstr "แอนิเมชัน" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "New name:" +msgstr "ชื่อใหม่:" + +#: editor/plugins/animation_tree_editor_plugin.cpp +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Scale:" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Fade In (s):" +msgstr "เฟดเข้า (วิ):" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Fade Out (s):" +msgstr "เฟดออก (วิ):" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Blend" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Mix" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Auto Restart:" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Restart (s):" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Random Restart (s):" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Start!" +msgstr "เริ่ม!" + +#: editor/plugins/animation_tree_editor_plugin.cpp +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Amount:" +msgstr "จำนวน:" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Blend:" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Blend 0:" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Blend 1:" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "X-Fade Time (s):" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Current:" +msgstr "ปัจจุบัน:" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Add Input" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Clear Auto-Advance" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Set Auto-Advance" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Delete Input" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Rename" +msgstr "เปลี่ยนชื่อ" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Animation tree is valid." +msgstr "ผังแอนิเมชันถูกต้อง" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Animation tree is invalid." +msgstr "ผังแอนิเมชันไม่ถูกต้อง" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Animation Node" +msgstr "โหนดแอนิเมชัน" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "OneShot Node" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Mix Node" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Blend2 Node" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Blend3 Node" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Blend4 Node" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "TimeScale Node" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "TimeSeek Node" +msgstr "" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Transition Node" +msgstr "โหนดทรานสิชัน" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Import Animations.." +msgstr "นำเข้าแอนิเมชัน.." + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Edit Node Filters" +msgstr "แก้ไขตัวกรองโหนด" + +#: editor/plugins/animation_tree_editor_plugin.cpp +msgid "Filters.." +msgstr "ตัวกรอง.." + +#: editor/plugins/baked_light_baker.cpp +msgid "Parsing %d Triangles:" +msgstr "วิเคราะห์สามเหลี่ยม %d อัน:" + +#: editor/plugins/baked_light_baker.cpp +msgid "Triangle #" +msgstr "สามเหลี่ยม #" + +#: editor/plugins/baked_light_baker.cpp +msgid "Light Baker Setup:" +msgstr "ตั้งค่า Light Baker:" + +#: editor/plugins/baked_light_baker.cpp +msgid "Parsing Geometry" +msgstr "วิเคราะห์ Geometry" + +#: editor/plugins/baked_light_baker.cpp +msgid "Fixing Lights" +msgstr "ซ่อมแซมแสง" + +#: editor/plugins/baked_light_baker.cpp +msgid "Making BVH" +msgstr "กำลังสร้าง BVH" + +#: editor/plugins/baked_light_baker.cpp +msgid "Creating Light Octree" +msgstr "กำลังสร้าง Light Octree" + +#: editor/plugins/baked_light_baker.cpp +msgid "Creating Octree Texture" +msgstr "สร้าง Texture Octree" + +#: editor/plugins/baked_light_baker.cpp +msgid "Transfer to Lightmaps:" +msgstr "ส่งผ่านไปยัง Lightmaps:" + +#: editor/plugins/baked_light_baker.cpp +msgid "Allocating Texture #" +msgstr "จัดสรร Texture #" + +#: editor/plugins/baked_light_baker.cpp +msgid "Baking Triangle #" +msgstr "กำลัง Bake สามเหลี่ยม #" + +#: editor/plugins/baked_light_baker.cpp +msgid "Post-Processing Texture #" +msgstr "ประมวลผล Texture #" + +#: editor/plugins/baked_light_editor_plugin.cpp +msgid "Bake!" +msgstr "" + +#: editor/plugins/baked_light_editor_plugin.cpp +msgid "Reset the lightmap octree baking process (start over)." +msgstr "รีเซ็ตขั้นตอนการ bake lightmap octree (เริ่มใหม่)" + +#: editor/plugins/camera_editor_plugin.cpp +#: editor/plugins/sample_library_editor_plugin.cpp +msgid "Preview" +msgstr "ตัวอย่าง" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Configure Snap" +msgstr "ตั้งค่า Snap" + +#: editor/plugins/canvas_item_editor_plugin.cpp +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Grid Offset:" +msgstr "ตำแหน่ง Grid:" + +#: editor/plugins/canvas_item_editor_plugin.cpp +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Grid Step:" +msgstr "ระยะ Grid:" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Rotation Offset:" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Rotation Step:" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Move Pivot" +msgstr "ย้ายจุดหมุน" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Move Action" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Edit IK Chain" +msgstr "แก้ไข IK Chain" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Edit CanvasItem" +msgstr "แก้ไข CanvasItem" + +#: editor/plugins/canvas_item_editor_plugin.cpp +#, fuzzy +msgid "Change Anchors" +msgstr "แก้ไขหมุด" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Zoom (%):" +msgstr "ซูม (%):" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Paste Pose" +msgstr "วางท่าทาง" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Select Mode" +msgstr "เลือกโหมด" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Drag: Rotate" +msgstr "ลาก: หมุน" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Alt+Drag: Move" +msgstr "Alt+ลาก: ย้าย" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Press 'v' to Change Pivot, 'Shift+v' to Drag Pivot (while moving)." +msgstr "กด 'v' เพื่อเปลี่ยนจุดหมุน 'Shift+v' เพื่อลากจุดหมุน" + +#: editor/plugins/canvas_item_editor_plugin.cpp +#, fuzzy +msgid "Alt+RMB: Depth list selection" +msgstr "Alt+คลิกขวา: เลือกที่ซ้อนกัน" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Move Mode" +msgstr "โหมดเคลื่อนย้าย" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Rotate Mode" +msgstr "โหมดหมุน" + +#: editor/plugins/canvas_item_editor_plugin.cpp +#: editor/plugins/spatial_editor_plugin.cpp +msgid "" +"Show a list of all objects at the position clicked\n" +"(same as Alt+RMB in select mode)." +msgstr "" +"แสดงวัตถุทั้งหมด ณ ตำแหน่งที่คลิก\n" +"(เหมือน Alt+คลิกขวา ในโหมดเลือก)" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Click to change object's rotation pivot." +msgstr "คลิกเพื่อเปลี่ยนจุดหมุนของวัตถุ" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Pan Mode" +msgstr "โหมดมุมมอง" + +#: editor/plugins/canvas_item_editor_plugin.cpp +#, fuzzy +msgid "Lock the selected object in place (can't be moved)." +msgstr "ล็อคไม่ให้วัตถุที่เลือกย้ายตำแหน่ง" + +#: editor/plugins/canvas_item_editor_plugin.cpp +#, fuzzy +msgid "Unlock the selected object (can be moved)." +msgstr "ปลดล็อควัตถุที่เลือก" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Makes sure the object's children are not selectable." +msgstr "ทำให้เลือกโหนดลูกไม่ได้" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Restores the object's children's ability to be selected." +msgstr "ทำให้เลือกโหนดลูกได้เหมือนเดิม" + +#: editor/plugins/canvas_item_editor_plugin.cpp +#: editor/plugins/polygon_2d_editor_plugin.cpp +#: editor/plugins/script_text_editor.cpp +#: editor/plugins/shader_editor_plugin.cpp editor/project_manager.cpp +#: modules/visual_script/visual_script_editor.cpp +msgid "Edit" +msgstr "แก้ไข" + +#: editor/plugins/canvas_item_editor_plugin.cpp +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Use Snap" +msgstr "ใช้ Snap" + +#: editor/plugins/canvas_item_editor_plugin.cpp +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Show Grid" +msgstr "แสดง Grid" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Use Rotation Snap" +msgstr "ใช้ Snap กับการหมุน" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Snap Relative" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Configure Snap.." +msgstr "ตั้งค่า Snap.." + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Use Pixel Snap" +msgstr "ใช้ Snap พิกเซล" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Expand to Parent" +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Skeleton.." +msgstr "โครงกระดูก.." + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Make Bones" +msgstr "สร้างกระดูก" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Clear Bones" +msgstr "ลบกระดูก" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Show Bones" +msgstr "แสดงกระดูก" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Make IK Chain" +msgstr "สร้าง IK Chain" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Clear IK Chain" +msgstr "ลบ IK Chain" + +#: editor/plugins/canvas_item_editor_plugin.cpp +#: editor/plugins/spatial_editor_plugin.cpp +msgid "View" +msgstr "มุมมอง" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Zoom Reset" +msgstr "รีเซ็ตการซูม" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Zoom Set.." +msgstr "ตั้งค่าการซูม.." + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Center Selection" +msgstr "ให้สิ่งที่เลือกอยู่กลางจอ" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Frame Selection" +msgstr "ให้สิ่งที่เลือกเต็มจอ" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Anchor" +msgstr "หมุด" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Insert Keys" +msgstr "เพิ่มคีย์" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Insert Key" +msgstr "เพิ่มคีย์" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Insert Key (Existing Tracks)" +msgstr "เพิ่มคีย์ (แทร็กที่มีอยู่แล้ว)" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Copy Pose" +msgstr "คัดลอกท่าทาง" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Clear Pose" +msgstr "ลบท่าทาง" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Set a Value" +msgstr "เซ็ตค่า" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Snap (Pixels):" +msgstr "Snap (พิกเซล):" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Add %s" +msgstr "เพิ่ม %s" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Adding %s..." +msgstr "กำลังเพิ่ม %s..." + +#: editor/plugins/canvas_item_editor_plugin.cpp editor/scene_tree_dock.cpp +msgid "Create Node" +msgstr "สร้างโหนด" + +#: editor/plugins/canvas_item_editor_plugin.cpp editor/scene_tree_dock.cpp +msgid "Error instancing scene from %s" +msgstr "ผิดพลาดขณะอินสแตนซ์ฉากจาก %s" + +#: editor/plugins/canvas_item_editor_plugin.cpp editor/scene_tree_dock.cpp +msgid "OK :(" +msgstr "ตกลง :(" + +#: editor/plugins/canvas_item_editor_plugin.cpp editor/scene_tree_dock.cpp +msgid "No parent to instance a child at." +msgstr "" + +#: editor/plugins/canvas_item_editor_plugin.cpp editor/scene_tree_dock.cpp +msgid "This operation requires a single selected node." +msgstr "ต้องเลือกเพียงโหนดเดียว" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "Change default type" +msgstr "เปลี่ยนประเภท" + +#: editor/plugins/canvas_item_editor_plugin.cpp editor/scene_tree_dock.cpp +#: scene/gui/dialogs.cpp +msgid "OK" +msgstr "ตกลง" + +#: editor/plugins/canvas_item_editor_plugin.cpp +msgid "" +"Drag & drop + Shift : Add node as sibling\n" +"Drag & drop + Alt : Change node type" +msgstr "" +"ลาก & วาง + Shift: เพิ่มเป็นโหนดญาติ\n" +"ลาก & วาง + Alt: เปลี่ยนประเภทโหนด" + +#: editor/plugins/collision_polygon_2d_editor_plugin.cpp +#: editor/plugins/light_occluder_2d_editor_plugin.cpp +#: editor/plugins/navigation_polygon_editor_plugin.cpp +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Create Poly" +msgstr "สร้างรูปหลายเหลี่ยม" + +#: editor/plugins/collision_polygon_2d_editor_plugin.cpp +#: editor/plugins/collision_polygon_editor_plugin.cpp +#: editor/plugins/light_occluder_2d_editor_plugin.cpp +#: editor/plugins/navigation_polygon_editor_plugin.cpp +#: editor/plugins/path_2d_editor_plugin.cpp +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Edit Poly" +msgstr "แก้ไขรูปหลายเหลี่ยม" + +#: editor/plugins/collision_polygon_2d_editor_plugin.cpp +#: editor/plugins/collision_polygon_editor_plugin.cpp +#: editor/plugins/light_occluder_2d_editor_plugin.cpp +#: editor/plugins/navigation_polygon_editor_plugin.cpp +#: editor/plugins/path_2d_editor_plugin.cpp +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Edit Poly (Remove Point)" +msgstr "แก้ไขรูปหลายเหลี่ยม (ลบจุด)" + +#: editor/plugins/collision_polygon_2d_editor_plugin.cpp +#: editor/plugins/light_occluder_2d_editor_plugin.cpp +#: editor/plugins/navigation_polygon_editor_plugin.cpp +msgid "Create a new polygon from scratch." +msgstr "สร้างรูปหลายเหลี่ยมจากความว่างเปล่า" + +#: editor/plugins/collision_polygon_editor_plugin.cpp +msgid "Create Poly3D" +msgstr "แก้ไขรูปหลายเหลี่ยม 3D" + +#: editor/plugins/collision_shape_2d_editor_plugin.cpp +msgid "Set Handle" +msgstr "" + +#: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp +#, fuzzy +msgid "Add/Remove Color Ramp Point" +msgstr "เพิ่ม/ลบตำแหน่งสี" + +#: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp +#: editor/plugins/shader_graph_editor_plugin.cpp +#, fuzzy +msgid "Modify Color Ramp" +msgstr "แก้ไขการไล่สี" + +#: editor/plugins/cube_grid_theme_editor_plugin.cpp +msgid "Creating Mesh Library" +msgstr "กำลังสร้าง Mesh Library" + +#: editor/plugins/cube_grid_theme_editor_plugin.cpp +msgid "Thumbnail.." +msgstr "รูปตัวอย่าง.." + +#: editor/plugins/cube_grid_theme_editor_plugin.cpp +msgid "Remove item %d?" +msgstr "ลบไอเทม %d?" + +#: editor/plugins/cube_grid_theme_editor_plugin.cpp +#: editor/plugins/theme_editor_plugin.cpp +#: editor/plugins/tile_set_editor_plugin.cpp +msgid "Add Item" +msgstr "เพิ่มไอเทม" + +#: editor/plugins/cube_grid_theme_editor_plugin.cpp +msgid "Remove Selected Item" +msgstr "ลบไอเทมที่เลือก" + +#: editor/plugins/cube_grid_theme_editor_plugin.cpp +msgid "Import from Scene" +msgstr "นำเข้าจากฉาก" + +#: editor/plugins/cube_grid_theme_editor_plugin.cpp +msgid "Update from Scene" +msgstr "อัพเดตจากฉาก" + +#: editor/plugins/curve_editor_plugin.cpp +#, fuzzy +msgid "Modify Curve" +msgstr "แก้ไขการไล่สี" + +#: editor/plugins/item_list_editor_plugin.cpp +msgid "Item %d" +msgstr "ไอเทม %d" + +#: editor/plugins/item_list_editor_plugin.cpp +msgid "Items" +msgstr "ไอเทม" + +#: editor/plugins/item_list_editor_plugin.cpp +msgid "Item List Editor" +msgstr "แก้ไขรายชื่อไอเทม" + +#: editor/plugins/light_occluder_2d_editor_plugin.cpp +msgid "Create Occluder Polygon" +msgstr "สร้างรูปหลายเหลี่ยมกั้นแสง" + +#: editor/plugins/light_occluder_2d_editor_plugin.cpp +#: editor/plugins/navigation_polygon_editor_plugin.cpp +msgid "Edit existing polygon:" +msgstr "แก้ไขรูปหลายเหลี่ยมเดิม:" + +#: editor/plugins/light_occluder_2d_editor_plugin.cpp +#: editor/plugins/navigation_polygon_editor_plugin.cpp +msgid "LMB: Move Point." +msgstr "คลิกซ้าย: ย้ายจุด" + +#: editor/plugins/light_occluder_2d_editor_plugin.cpp +#: editor/plugins/navigation_polygon_editor_plugin.cpp +msgid "Ctrl+LMB: Split Segment." +msgstr "Ctrl+คลิกซ้าย: แยกส่วน" + +#: editor/plugins/light_occluder_2d_editor_plugin.cpp +#: editor/plugins/navigation_polygon_editor_plugin.cpp +msgid "RMB: Erase Point." +msgstr "คลิกขวา: ลบจุด" + +#: editor/plugins/line_2d_editor_plugin.cpp +#, fuzzy +msgid "Remove Point from Line2D" +msgstr "ลบจุดในเส้นโค้ง" + +#: editor/plugins/line_2d_editor_plugin.cpp +#, fuzzy +msgid "Add Point to Line2D" +msgstr "เพิ่มจุดในเส้นโค้ง" + +#: editor/plugins/line_2d_editor_plugin.cpp +#, fuzzy +msgid "Move Point in Line2D" +msgstr "ย้ายจุดในเส้นโค้ง" + +#: editor/plugins/line_2d_editor_plugin.cpp +#: editor/plugins/path_2d_editor_plugin.cpp +#: editor/plugins/path_editor_plugin.cpp +msgid "Select Points" +msgstr "เลือกจุด" + +#: editor/plugins/line_2d_editor_plugin.cpp +#: editor/plugins/path_2d_editor_plugin.cpp +#: editor/plugins/path_editor_plugin.cpp +msgid "Shift+Drag: Select Control Points" +msgstr "Shift+ลาก: เลือกจุดควบคุม" + +#: editor/plugins/line_2d_editor_plugin.cpp +#: editor/plugins/path_2d_editor_plugin.cpp +#: editor/plugins/path_editor_plugin.cpp +msgid "Click: Add Point" +msgstr "คลิก: เพิ่มจุด" + +#: editor/plugins/line_2d_editor_plugin.cpp +#: editor/plugins/path_2d_editor_plugin.cpp +#: editor/plugins/path_editor_plugin.cpp +msgid "Right Click: Delete Point" +msgstr "คลิกขวา: ลบจุด" + +#: editor/plugins/line_2d_editor_plugin.cpp +#: editor/plugins/path_2d_editor_plugin.cpp +#: editor/plugins/path_editor_plugin.cpp +msgid "Add Point (in empty space)" +msgstr "เพิ่มจุด (ในที่ว่าง)" + +#: editor/plugins/line_2d_editor_plugin.cpp +#, fuzzy +msgid "Split Segment (in line)" +msgstr "แยกส่วน (ในเส้นโค้ง)" + +#: editor/plugins/line_2d_editor_plugin.cpp +#: editor/plugins/path_2d_editor_plugin.cpp +#: editor/plugins/path_editor_plugin.cpp +msgid "Delete Point" +msgstr "ลบจุด" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Mesh is empty!" +msgstr "Mesh ว่างเปล่า!" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Static Trimesh Body" +msgstr "" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Static Convex Body" +msgstr "" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "This doesn't work on scene root!" +msgstr "ทำกับโหนดรากไม่ได้!" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Trimesh Shape" +msgstr "" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Convex Shape" +msgstr "สร้างรูปทรงนูน" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Navigation Mesh" +msgstr "สร้าง Mesh นำทาง" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "MeshInstance lacks a Mesh!" +msgstr "MeshInstance ไม่มี Mesh!" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Mesh has not surface to create outlines from!" +msgstr "" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Could not create outline!" +msgstr "สร้างเส้นรอบรูปไม่ได้!" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Outline" +msgstr "สร้างเส้นรอบรูป" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Trimesh Static Body" +msgstr "" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Convex Static Body" +msgstr "" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Trimesh Collision Sibling" +msgstr "" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Convex Collision Sibling" +msgstr "" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Outline Mesh.." +msgstr "" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Create Outline Mesh" +msgstr "" + +#: editor/plugins/mesh_instance_editor_plugin.cpp +msgid "Outline Size:" +msgstr "ขนาดเส้นรอบรูป:" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "No mesh source specified (and no MultiMesh set in node)." +msgstr "ไม่ได้ระบุ mesh ต้นฉบับ (และไม่ได้ระบุ MultiMesh ไว้ในโหนด)" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "No mesh source specified (and MultiMesh contains no Mesh)." +msgstr "ไม่ได้ระบุ mesh ต้นฉบับ (และ MultiMesh ไม่มี Mesh)" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Mesh source is invalid (invalid path)." +msgstr "Mesh ต้นฉบับไม่ถูกต้อง (ที่อยู่ผิดพลาด)" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Mesh source is invalid (not a MeshInstance)." +msgstr "Mesh ต้นฉบับไม่ถูกต้อง (ไม่ใช่ MeshInstance)" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Mesh source is invalid (contains no Mesh resource)." +msgstr "Mesh ต้นฉบับไม่ถูกต้อง (ไม่มีรีซอร์ส Mesh)" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "No surface source specified." +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Surface source is invalid (invalid path)." +msgstr "พื้นผิวต้นฉบับไม่ถูกต้อง (ตำแหน่งที่อยู่ไม่ถูกต้อง)" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Surface source is invalid (no geometry)." +msgstr "พื้นผิวต้นฉบับไม่ถูกต้อง (ไม่มี geometry)" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Surface source is invalid (no faces)." +msgstr "พื้นผิวต้นฉบับไม่ถูกต้อง (ไม่มีหน้า)" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Parent has no solid faces to populate." +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Couldn't map area." +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Select a Source Mesh:" +msgstr "เลือก Mesh ต้นฉบับ:" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Select a Target Surface:" +msgstr "เลือกพื้นผิวปลายทาง:" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Populate Surface" +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Populate MultiMesh" +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Target Surface:" +msgstr "พื้นผิวปลายทาง:" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Source Mesh:" +msgstr "Mesh ต้นฉบับ:" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "X-Axis" +msgstr "แกน X" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Y-Axis" +msgstr "แกน Y" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Z-Axis" +msgstr "แกน Z" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Mesh Up Axis:" +msgstr "แกนขึ้นของ Mesh:" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Random Rotation:" +msgstr "สุ่มการหมุน:" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Random Tilt:" +msgstr "" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Random Scale:" +msgstr "สุ่มขนาด:" + +#: editor/plugins/multimesh_editor_plugin.cpp +msgid "Populate" +msgstr "" + +#: editor/plugins/navigation_polygon_editor_plugin.cpp +msgid "Create Navigation Polygon" +msgstr "สร้างรูปทรงนำทาง" + +#: editor/plugins/navigation_polygon_editor_plugin.cpp +msgid "Remove Poly And Point" +msgstr "" + +#: editor/plugins/particles_2d_editor_plugin.cpp +msgid "Error loading image:" +msgstr "ผิดพลาดขณะโหลดรูป:" + +#: editor/plugins/particles_2d_editor_plugin.cpp +msgid "No pixels with transparency > 128 in image.." +msgstr "รูปไม่มีพิกเซลใดที่ความโปร่งแสง > 128 .." + +#: editor/plugins/particles_2d_editor_plugin.cpp +msgid "Set Emission Mask" +msgstr "กำหนด Mask การปล่อย" + +#: editor/plugins/particles_2d_editor_plugin.cpp +msgid "Clear Emission Mask" +msgstr "ลบ Mask การปล่อย" + +#: editor/plugins/particles_2d_editor_plugin.cpp +msgid "Load Emission Mask" +msgstr "โหลด Mask การปล่อย" + +#: editor/plugins/particles_2d_editor_plugin.cpp +msgid "Generated Point Count:" +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp +msgid "Node does not contain geometry." +msgstr "โหนดไม่มี geometry" + +#: editor/plugins/particles_editor_plugin.cpp +msgid "Node does not contain geometry (faces)." +msgstr "โหนดไม่มี geometry (หน้า)" + +#: editor/plugins/particles_editor_plugin.cpp +msgid "A processor material of type 'ParticlesMaterial' is required." +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp +msgid "Faces contain no area!" +msgstr "หน้าไม่มีพื้นที่!" + +#: editor/plugins/particles_editor_plugin.cpp +msgid "No faces!" +msgstr "ไม่มีหน้า!" + +#: editor/plugins/particles_editor_plugin.cpp +msgid "Generate AABB" +msgstr "สร้าง AABB" + +#: editor/plugins/particles_editor_plugin.cpp +msgid "Create Emission Points From Mesh" +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp +msgid "Create Emission Points From Node" +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp +msgid "Clear Emitter" +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp +msgid "Create Emitter" +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp +#, fuzzy +msgid "Emission Points:" +msgstr "กำหนด Mask การปล่อย" + +#: editor/plugins/particles_editor_plugin.cpp +#, fuzzy +msgid "Surface Points" +msgstr "%d พื้นผิว" + +#: editor/plugins/particles_editor_plugin.cpp +msgid "Surface Points+Normal (Directed)" +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp +msgid "Volume" +msgstr "ปริมาตร" + +#: editor/plugins/particles_editor_plugin.cpp +msgid "Emission Source: " +msgstr "" + +#: editor/plugins/path_2d_editor_plugin.cpp +msgid "Remove Point from Curve" +msgstr "ลบจุดในเส้นโค้ง" + +#: editor/plugins/path_2d_editor_plugin.cpp +#: editor/plugins/path_editor_plugin.cpp +msgid "Add Point to Curve" +msgstr "เพิ่มจุดในเส้นโค้ง" + +#: editor/plugins/path_2d_editor_plugin.cpp +msgid "Move Point in Curve" +msgstr "ย้ายจุดในเส้นโค้ง" + +#: editor/plugins/path_2d_editor_plugin.cpp +msgid "Move In-Control in Curve" +msgstr "" + +#: editor/plugins/path_2d_editor_plugin.cpp +msgid "Move Out-Control in Curve" +msgstr "" + +#: editor/plugins/path_2d_editor_plugin.cpp +msgid "Select Control Points (Shift+Drag)" +msgstr "เลือกจุดควบคุม (Shift+ลาก)" + +#: editor/plugins/path_2d_editor_plugin.cpp +#: editor/plugins/path_editor_plugin.cpp +msgid "Split Segment (in curve)" +msgstr "แยกส่วน (ในเส้นโค้ง)" + +#: editor/plugins/path_2d_editor_plugin.cpp +#: editor/plugins/path_editor_plugin.cpp +msgid "Close Curve" +msgstr "ปิดเส้นโค้ง" + +#: editor/plugins/path_editor_plugin.cpp +msgid "Curve Point #" +msgstr "จุดเส้นโค้ง #" + +#: editor/plugins/path_editor_plugin.cpp +msgid "Set Curve Point Pos" +msgstr "กำหนดพิกัดจุดเส้นโค้ง" + +#: editor/plugins/path_editor_plugin.cpp +msgid "Set Curve In Pos" +msgstr "" + +#: editor/plugins/path_editor_plugin.cpp +msgid "Set Curve Out Pos" +msgstr "" + +#: editor/plugins/path_editor_plugin.cpp +msgid "Split Path" +msgstr "ตัดเส้น" + +#: editor/plugins/path_editor_plugin.cpp +msgid "Remove Path Point" +msgstr "ลบจุด" + +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Create UV Map" +msgstr "สร้าง UV Map" + +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Transform UV Map" +msgstr "" + +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Polygon 2D UV Editor" +msgstr "แก้ไข UV รูปหลายเหลี่ยม 2D" + +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Move Point" +msgstr "ย้ายจุด" + +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Ctrl: Rotate" +msgstr "Ctrl: หมุน" + +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Shift: Move All" +msgstr "Shift: ย้ายทั้งหมด" + +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Shift+Ctrl: Scale" +msgstr "Shift+Ctrl: ปรับขนาด" + +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Move Polygon" +msgstr "ย้ายรูปหลายเหลี่ยม" + +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Rotate Polygon" +msgstr "หมุนรูปหลายเหลี่ยม" + +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Scale Polygon" +msgstr "ปรับขนาดรูปหลายเหลี่ยม" + +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Polygon->UV" +msgstr "รูปหลายเหลี่ยม->UV" + +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "UV->Polygon" +msgstr "UV->รูปหลายเหลี่ยม" + +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Clear UV" +msgstr "ลบ UV" + +#: editor/plugins/polygon_2d_editor_plugin.cpp +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Snap" +msgstr "" + +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Enable Snap" +msgstr "เปิด Snap" + +#: editor/plugins/polygon_2d_editor_plugin.cpp +msgid "Grid" +msgstr "เส้นตาราง" + +#: editor/plugins/resource_preloader_editor_plugin.cpp +msgid "ERROR: Couldn't load resource!" +msgstr "ผิดพลาด: โหลดรีซอร์สไม่ได้!" + +#: editor/plugins/resource_preloader_editor_plugin.cpp +msgid "Add Resource" +msgstr "เพิ่มรีซอร์ส" + +#: editor/plugins/resource_preloader_editor_plugin.cpp +msgid "Rename Resource" +msgstr "เปลี่ยนชื่อรีซอร์ส" + +#: editor/plugins/resource_preloader_editor_plugin.cpp +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Delete Resource" +msgstr "ลบรีซอร์ส" + +#: editor/plugins/resource_preloader_editor_plugin.cpp +msgid "Resource clipboard is empty!" +msgstr "คลิปบอร์ดไม่มีรีซอร์ส!" + +#: editor/plugins/resource_preloader_editor_plugin.cpp +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Load Resource" +msgstr "โหลดรีซอร์ส" + +#: editor/plugins/resource_preloader_editor_plugin.cpp +#: editor/plugins/script_text_editor.cpp +#: editor/plugins/shader_editor_plugin.cpp +#: editor/plugins/sprite_frames_editor_plugin.cpp editor/property_editor.cpp +#: editor/resources_dock.cpp scene/gui/line_edit.cpp scene/gui/text_edit.cpp +msgid "Paste" +msgstr "วาง" + +#: editor/plugins/rich_text_editor_plugin.cpp +msgid "Parse BBCode" +msgstr "ประมวลผล BBCode" + +#: editor/plugins/sample_editor_plugin.cpp +msgid "Length:" +msgstr "ความยาว:" + +#: editor/plugins/sample_library_editor_plugin.cpp +msgid "Open Sample File(s)" +msgstr "เปิดไฟล์เสียง" + +#: editor/plugins/sample_library_editor_plugin.cpp +msgid "ERROR: Couldn't load sample!" +msgstr "ผิดพลาด: โหลดไฟล์เสียงไม่ได้!" + +#: editor/plugins/sample_library_editor_plugin.cpp +msgid "Add Sample" +msgstr "เพิ่มไฟล์เสียง" + +#: editor/plugins/sample_library_editor_plugin.cpp +msgid "Rename Sample" +msgstr "เปลี่ยนชื่อไฟล์เสียง" + +#: editor/plugins/sample_library_editor_plugin.cpp +msgid "Delete Sample" +msgstr "ลบไฟล์เสียง" + +#: editor/plugins/sample_library_editor_plugin.cpp +msgid "16 Bits" +msgstr "16 บิต" + +#: editor/plugins/sample_library_editor_plugin.cpp +msgid "8 Bits" +msgstr "8 บิต" + +#: editor/plugins/sample_library_editor_plugin.cpp +msgid "Stereo" +msgstr "สเตอริโอ" + +#: editor/plugins/sample_library_editor_plugin.cpp +msgid "Mono" +msgstr "โมโน" + +#: editor/plugins/sample_library_editor_plugin.cpp +#: editor/script_editor_debugger.cpp +msgid "Format" +msgstr "รูปแบบ" + +#: editor/plugins/sample_library_editor_plugin.cpp +msgid "Pitch" +msgstr "เสียงสูงต่ำ" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Error while saving theme" +msgstr "ผิดพลาดขณะบันทึกธีม" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Error saving" +msgstr "ผิดพลาดขณะบันทึก" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Error importing theme" +msgstr "ผิดพลาดขณะนำเข้าธีม" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Error importing" +msgstr "ผิดพลาดขณะนำเข้า" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Import Theme" +msgstr "นำเข้าธีม" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Save Theme As.." +msgstr "บันทึกธีมเป็น" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Next script" +msgstr "สคริปต์ต่อไป" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Previous script" +msgstr "สคริปต์ก่อนหน้า" + +#: editor/plugins/script_editor_plugin.cpp +msgid "File" +msgstr "ไฟล์" + +#: editor/plugins/script_editor_plugin.cpp editor/property_editor.cpp +msgid "New" +msgstr "ไฟล์ใหม่" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Save All" +msgstr "บันทึกทั้งหมด" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Soft Reload Script" +msgstr "โหลดสคริปต์ใหม่" + +#: editor/plugins/script_editor_plugin.cpp +msgid "History Prev" +msgstr "ประวัติก่อนหน้า" + +#: editor/plugins/script_editor_plugin.cpp +msgid "History Next" +msgstr "ประวัติถัดไป" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Reload Theme" +msgstr "โหลดธีมใหม่" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Save Theme" +msgstr "บันทึกธีม" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Save Theme As" +msgstr "บันทึกธีมเป็น" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Close Docs" +msgstr "ปิดคู่มือ" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Close All" +msgstr "ปิดทั้งหมด" + +#: editor/plugins/script_editor_plugin.cpp +#: editor/plugins/script_text_editor.cpp +#: editor/plugins/shader_editor_plugin.cpp +msgid "Find.." +msgstr "ค้นหา.." + +#: editor/plugins/script_editor_plugin.cpp +#: editor/plugins/script_text_editor.cpp +#: editor/plugins/shader_editor_plugin.cpp +msgid "Find Next" +msgstr "ค้นหาต่อไป" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Debug" +msgstr "ดีบัค" + +#: editor/plugins/script_editor_plugin.cpp editor/script_editor_debugger.cpp +msgid "Step Over" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp editor/script_editor_debugger.cpp +msgid "Step Into" +msgstr "" + +#: editor/plugins/script_editor_plugin.cpp editor/script_editor_debugger.cpp +msgid "Break" +msgstr "หยุดพัก" + +#: editor/plugins/script_editor_plugin.cpp editor/script_editor_debugger.cpp +msgid "Continue" +msgstr "ทำต่อไป" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Keep Debugger Open" +msgstr "เปิดตัวดีบัคค้างไว้" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Window" +msgstr "หน้าต่าง" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Move Left" +msgstr "ย้ายไปซ้าย" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Move Right" +msgstr "ย้ายไปขวา" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Tutorials" +msgstr "สอนการใช้งาน" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Open https://godotengine.org at tutorials section." +msgstr "เปิด https://godotengine.org ไปยังหน้าสอนการใช้งาน" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Classes" +msgstr "คลาส" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Search the class hierarchy." +msgstr "ค้นหาคลาส" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Search the reference documentation." +msgstr "ค้นหาคู่มือ" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Go to previous edited document." +msgstr "ไปเอกสารก่อนหน้า" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Go to next edited document." +msgstr "ไปเอกสารถัดไป" + +#: editor/plugins/script_editor_plugin.cpp +#, fuzzy +msgid "Discard" +msgstr "ไม่ต่อเนื่อง" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Create Script" +msgstr "สร้างสคริปต์" + +#: editor/plugins/script_editor_plugin.cpp +msgid "" +"The following files are newer on disk.\n" +"What action should be taken?:" +msgstr "" +"ไฟล์ต่อไปนี้ในดิสก์ใหม่กว่า\n" +"จะทำอย่างไรต่อไป?:" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Reload" +msgstr "โหลดใหม่" + +#: editor/plugins/script_editor_plugin.cpp +msgid "Resave" +msgstr "บันทึกอีกครั้ง" + +#: editor/plugins/script_editor_plugin.cpp editor/script_editor_debugger.cpp +msgid "Debugger" +msgstr "ตัวดีบัค" + +#: editor/plugins/script_editor_plugin.cpp +msgid "" +"Built-in scripts can only be edited when the scene they belong to is loaded" +msgstr "สคริปต์ฝังจะแก้ไขได้ต่อเมื่อฉากที่ฝังสคริปต์นั้นถูกเปิดอยู่" + +#: editor/plugins/script_text_editor.cpp +#, fuzzy +msgid "Pick Color" +msgstr "เลือกสี" + +#: editor/plugins/script_text_editor.cpp +#: editor/plugins/shader_editor_plugin.cpp scene/gui/line_edit.cpp +#: scene/gui/text_edit.cpp +msgid "Cut" +msgstr "ตัด" + +#: editor/plugins/script_text_editor.cpp +#: editor/plugins/shader_editor_plugin.cpp editor/property_editor.cpp +#: editor/resources_dock.cpp scene/gui/line_edit.cpp scene/gui/text_edit.cpp +msgid "Copy" +msgstr "คัดลอก" + +#: editor/plugins/script_text_editor.cpp +#: editor/plugins/shader_editor_plugin.cpp scene/gui/line_edit.cpp +#: scene/gui/text_edit.cpp +msgid "Select All" +msgstr "เลือกทั้งหมด" + +#: editor/plugins/script_text_editor.cpp editor/scene_tree_dock.cpp +msgid "Move Up" +msgstr "ย้ายขึ้น" + +#: editor/plugins/script_text_editor.cpp editor/scene_tree_dock.cpp +msgid "Move Down" +msgstr "ย้ายลง" + +#: editor/plugins/script_text_editor.cpp +msgid "Indent Left" +msgstr "ย่อหน้าซ้าย" + +#: editor/plugins/script_text_editor.cpp +msgid "Indent Right" +msgstr "ย่อหน้าขวา" + +#: editor/plugins/script_text_editor.cpp +#, fuzzy +msgid "Toggle Comment" +msgstr "เปิดปิด ความคิดเห็น" + +#: editor/plugins/script_text_editor.cpp +msgid "Clone Down" +msgstr "คัดลอกบรรทัดลงมา" + +#: editor/plugins/script_text_editor.cpp +msgid "Complete Symbol" +msgstr "" + +#: editor/plugins/script_text_editor.cpp +msgid "Trim Trailing Whitespace" +msgstr "ลบตัวอักษรที่มองไม่เห็น" + +#: editor/plugins/script_text_editor.cpp +msgid "Auto Indent" +msgstr "ย่อหน้าอัตโนมัติ" + +#: editor/plugins/script_text_editor.cpp +#: modules/visual_script/visual_script_editor.cpp +#, fuzzy +msgid "Toggle Breakpoint" +msgstr "เปิดปิดจุดพัก" + +#: editor/plugins/script_text_editor.cpp +msgid "Remove All Breakpoints" +msgstr "ลบจุดพักโปรแกรมทั้งหมด" + +#: editor/plugins/script_text_editor.cpp +msgid "Goto Next Breakpoint" +msgstr "ไปจุดพักโปรแกรมต่อไป" + +#: editor/plugins/script_text_editor.cpp +msgid "Goto Previous Breakpoint" +msgstr "ไปจุดพักโปรแกรมก่อนหน้า" + +#: editor/plugins/script_text_editor.cpp +#: editor/plugins/shader_editor_plugin.cpp +msgid "Find Previous" +msgstr "ค้นหาก่อนหน้า" + +#: editor/plugins/script_text_editor.cpp +#: editor/plugins/shader_editor_plugin.cpp +msgid "Replace.." +msgstr "แทนที่.." + +#: editor/plugins/script_text_editor.cpp +msgid "Goto Function.." +msgstr "ไปยังฟังก์ชัน.." + +#: editor/plugins/script_text_editor.cpp +#: editor/plugins/shader_editor_plugin.cpp +msgid "Goto Line.." +msgstr "ไปยังบรรทัด.." + +#: editor/plugins/script_text_editor.cpp +msgid "Contextual Help" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Scalar Constant" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Vec Constant" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change RGB Constant" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Scalar Operator" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Vec Operator" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Vec Scalar Operator" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change RGB Operator" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Toggle Rot Only" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Scalar Function" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Vec Function" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Scalar Uniform" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Vec Uniform" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change RGB Uniform" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Default Value" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change XForm Uniform" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Texture Uniform" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Cubemap Uniform" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Comment" +msgstr "เปลี่ยนข้อคิดเห็น" + +#: editor/plugins/shader_graph_editor_plugin.cpp +#, fuzzy +msgid "Add/Remove to Color Ramp" +msgstr "เพิ่ม/ลบในการไล่สี" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Add/Remove to Curve Map" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Modify Curve Map" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Change Input Name" +msgstr "" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Connect Graph Nodes" +msgstr "เชื่อมต่อโหนด" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Disconnect Graph Nodes" +msgstr "ตัดการเชื่อมต่อโหนด" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Remove Shader Graph Node" +msgstr "ลบโหนด" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Move Shader Graph Node" +msgstr "ย้ายโหนด" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Duplicate Graph Node(s)" +msgstr "ทำซ้ำโหนด" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Delete Shader Graph Node(s)" +msgstr "ลบโหนด" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Error: Cyclic Connection Link" +msgstr "ผิดพลาด: เชื่อมต่อเป็นวง" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Error: Missing Input Connections" +msgstr "ผิดพลาด: ไม่มีขาเข้า" + +#: editor/plugins/shader_graph_editor_plugin.cpp +msgid "Add Shader Graph Node" +msgstr "เพิ่มโหนด" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Orthogonal" +msgstr "ขนาน" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Perspective" +msgstr "เพอร์สเปกทีฟ" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Transform Aborted." +msgstr "ยกเลิกการเคลื่อนย้าย" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "X-Axis Transform." +msgstr "ย้ายตามแกน X" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Y-Axis Transform." +msgstr "ย้ายตามแกน Y" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Z-Axis Transform." +msgstr "ย้ายตามแกน Z" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "View Plane Transform." +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Scaling to %s%%." +msgstr "ปรับขนาดเป็น %s%%" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Rotating %s degrees." +msgstr "หมุน %s องศา" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Bottom View." +msgstr "มุมล่าง" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Bottom" +msgstr "ล่าง" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Top View." +msgstr "มุมบน" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Top" +msgstr "บน" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Rear View." +msgstr "มุมหลัง" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Rear" +msgstr "หลัง" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Front View." +msgstr "มุมหน้า" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Front" +msgstr "หน้า" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Left View." +msgstr "มุมซ้าย" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Left" +msgstr "ซ้าย" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Right View." +msgstr "มุมขวา" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Right" +msgstr "ขวา" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Keying is disabled (no key inserted)." +msgstr "ยกเลิกการสร้างคีย์ (ไม่ได้แทรกคีย์)" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Animation Key Inserted." +msgstr "แทรกคีย์แอนิเมชัน" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Align with view" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Environment" +msgstr "สภาพแวดล้อม" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Audio Listener" +msgstr "ตัวรับเสียง" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Gizmos" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "XForm Dialog" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "No scene selected to instance!" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Instance at Cursor" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Could not instance scene!" +msgstr "อินสแตนซ์ฉากไม่ได้!" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Move Mode (W)" +msgstr "โหมดเคลื่อนย้าย (W)" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Rotate Mode (E)" +msgstr "โหมดหมุน (E)" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Scale Mode (R)" +msgstr "โหมดปรับขนาด (R)" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Bottom View" +msgstr "มุมล่าง" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Top View" +msgstr "มุมบน" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Rear View" +msgstr "มุมหลัง" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Front View" +msgstr "มุมหน้า" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Left View" +msgstr "มุมซ้าย" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Right View" +msgstr "มุมขวา" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Switch Perspective/Orthogonal view" +msgstr "สลับมุมมองเพอร์สเปกทีฟ/ขนาน" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Insert Animation Key" +msgstr "แทรกคีย์แอนิเมชัน" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Focus Origin" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Focus Selection" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Align Selection With View" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Transform" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Local Coords" +msgstr "พิกัดภายใน" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Transform Dialog.." +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Use Default Light" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Use Default sRGB" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "1 Viewport" +msgstr "1 มุมมอง" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "2 Viewports" +msgstr "2 มุมมอง" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "2 Viewports (Alt)" +msgstr "2 มุมมอง (อีกแบบ)" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "3 Viewports" +msgstr "3 มุมมอง" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "3 Viewports (Alt)" +msgstr "3 มุมมอง (อีกแบบ)" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "4 Viewports" +msgstr "4 มุมมอง" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Display Normal" +msgstr "แสดงปกติ" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Display Wireframe" +msgstr "แสดงเส้นกรอบ" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Display Overdraw" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Display Shadeless" +msgstr "แสดงแบบไร้เงา" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "View Origin" +msgstr "แสดงจุดกำเนิด" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "View Grid" +msgstr "แสดงเส้นตาราง" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Snap Settings" +msgstr "ตั้งค่า Snap" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Translate Snap:" +msgstr "Snap การย้าย:" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Rotate Snap (deg.):" +msgstr "Snap การหมุน (องศา):" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Scale Snap (%):" +msgstr "Snap ปรับขนาด (%):" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Viewport Settings" +msgstr "ตั้งค่ามุมมอง" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Default Light Normal:" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +#, fuzzy +msgid "Ambient Light Color:" +msgstr "สีของแสงโดยรอบ:" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Perspective FOV (deg.):" +msgstr "FOV เพอร์สเปกทีฟ (องศา):" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "View Z-Near:" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "View Z-Far:" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Transform Change" +msgstr "เคลื่อนย้าย" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Translate:" +msgstr "เคลื่อนย้าย:" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Rotate (deg.):" +msgstr "หมุน (องศา):" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Scale (ratio):" +msgstr "ปรับขนาด (อัตราส่วน):" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Transform Type" +msgstr "" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Pre" +msgstr "ก่อน" + +#: editor/plugins/spatial_editor_plugin.cpp +msgid "Post" +msgstr "หลัง" + +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "ERROR: Couldn't load frame resource!" +msgstr "ผิดพลาด: โหลดรีซอร์สเฟรมไม่ได้!" + +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Add Frame" +msgstr "เพิ่มเฟรม" + +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Resource clipboard is empty or not a texture!" +msgstr "คลิปบอร์ดว่าง หรือไม่ใช่ texture!" + +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Paste Frame" +msgstr "วางเฟรม" + +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Add Empty" +msgstr "เพิ่มแบบว่างเปล่า" + +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Change Animation Loop" +msgstr "แก้ไขการวนซ้ำแอนิเมชัน" + +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Change Animation FPS" +msgstr "แก้ไขความเร็วแอนิเมชัน" + +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "(empty)" +msgstr "(ว่างเปล่า)" + +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Animations" +msgstr "แอนิเมชัน" + +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Speed (FPS):" +msgstr "ความเร็ว (เฟรมต่อวินาที):" + +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Animation Frames" +msgstr "เฟรมแอนิเมชัน" + +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Insert Empty (Before)" +msgstr "เพิ่มแบบว่างเปล่า (ก่อน)" + +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Insert Empty (After)" +msgstr "เพิ่มแบบว่างเปล่า (หลัง)" + +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Up" +msgstr "ขึ้น" + +#: editor/plugins/sprite_frames_editor_plugin.cpp +msgid "Down" +msgstr "ลง" + +#: editor/plugins/style_box_editor_plugin.cpp +msgid "StyleBox Preview:" +msgstr "ตัวอย่าง StyleBox:" + +#: editor/plugins/texture_region_editor_plugin.cpp +msgid "Snap Mode:" +msgstr "โหมด Snap:" + +#: editor/plugins/texture_region_editor_plugin.cpp +msgid "<None>" +msgstr "<ไม่มี>" + +#: editor/plugins/texture_region_editor_plugin.cpp +msgid "Pixel Snap" +msgstr "Snap พิกเซล" + +#: editor/plugins/texture_region_editor_plugin.cpp +msgid "Grid Snap" +msgstr "Snap เส้นตาราง" + +#: editor/plugins/texture_region_editor_plugin.cpp +msgid "Auto Slice" +msgstr "" + +#: editor/plugins/texture_region_editor_plugin.cpp +msgid "Offset:" +msgstr "" + +#: editor/plugins/texture_region_editor_plugin.cpp +msgid "Step:" +msgstr "" + +#: editor/plugins/texture_region_editor_plugin.cpp +msgid "Separation:" +msgstr "" + +#: editor/plugins/texture_region_editor_plugin.cpp +msgid "Texture Region" +msgstr "" + +#: editor/plugins/texture_region_editor_plugin.cpp +msgid "Texture Region Editor" +msgstr "แก้ไขการแบ่งส่วน Texture" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Can't save theme to file:" +msgstr "บันทึกธีมไม่ได้:" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Add All Items" +msgstr "เพิ่มทุกไอเทม" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Add All" +msgstr "เพิ่มทั้งหมด" + +#: editor/plugins/theme_editor_plugin.cpp +#: editor/plugins/tile_set_editor_plugin.cpp +msgid "Remove Item" +msgstr "ลบไอเทม" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Theme" +msgstr "ธีม" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Add Class Items" +msgstr "เพิ่มไอเทมคลาส" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Remove Class Items" +msgstr "ลบไอเทมคลาส" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Create Empty Template" +msgstr "สร้างแม่แบบเปล่า" + +#: editor/plugins/theme_editor_plugin.cpp +#, fuzzy +msgid "Create Empty Editor Template" +msgstr "สร้างแม่แบบเปล่า" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "CheckBox Radio1" +msgstr "ปุ่มเรดิโอ 1" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "CheckBox Radio2" +msgstr "ปุ่มเรดิโอ 2" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Item" +msgstr "ไอเทม" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Check Item" +msgstr "ทำเครื่องหมายไอเทม" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Checked Item" +msgstr "ไอเทมมีเครื่องหมาย" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Has" +msgstr "มี" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Many" +msgstr "หลาย" + +#: editor/plugins/theme_editor_plugin.cpp editor/project_export.cpp +msgid "Options" +msgstr "ตัวเลือก" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Have,Many,Several,Options!" +msgstr "มี,มากมาย,หลาย,ตัวเลือก!" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Tab 1" +msgstr "แท็บ 1" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Tab 2" +msgstr "แท็บ 2" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Tab 3" +msgstr "แท็บ 3" + +#: editor/plugins/theme_editor_plugin.cpp editor/project_settings.cpp +#: editor/scene_tree_editor.cpp editor/script_editor_debugger.cpp +msgid "Type:" +msgstr "ประเภท:" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Data Type:" +msgstr "ชนิดข้อมูล:" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Icon" +msgstr "รูปย่อ" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Style" +msgstr "รูปแบบ" + +#: editor/plugins/theme_editor_plugin.cpp +msgid "Color" +msgstr "สี" + +#: editor/plugins/tile_map_editor_plugin.cpp +msgid "Paint TileMap" +msgstr "วาด TileMap" + +#: editor/plugins/tile_map_editor_plugin.cpp editor/scene_tree_dock.cpp +msgid "Duplicate" +msgstr "ทำซ้ำ" + +#: editor/plugins/tile_map_editor_plugin.cpp +msgid "Erase TileMap" +msgstr "ลบ TileMap" + +#: editor/plugins/tile_map_editor_plugin.cpp +msgid "Erase selection" +msgstr "ลบที่เลือก" + +#: editor/plugins/tile_map_editor_plugin.cpp +msgid "Find tile" +msgstr "ค้นหา tile" + +#: editor/plugins/tile_map_editor_plugin.cpp +msgid "Transpose" +msgstr "" + +#: editor/plugins/tile_map_editor_plugin.cpp +msgid "Mirror X" +msgstr "สะท้อนบนล่าง" + +#: editor/plugins/tile_map_editor_plugin.cpp +msgid "Mirror Y" +msgstr "สะท้อนซ้ายขวา" + +#: editor/plugins/tile_map_editor_plugin.cpp +msgid "Bucket" +msgstr "ถัง" + +#: editor/plugins/tile_map_editor_plugin.cpp +msgid "Pick Tile" +msgstr "เลือก Tile" + +#: editor/plugins/tile_map_editor_plugin.cpp +msgid "Select" +msgstr "เลือก" + +#: editor/plugins/tile_map_editor_plugin.cpp +msgid "Rotate 0 degrees" +msgstr "หมุน 0 องศา" + +#: editor/plugins/tile_map_editor_plugin.cpp +msgid "Rotate 90 degrees" +msgstr "หมุน 90 องศา" + +#: editor/plugins/tile_map_editor_plugin.cpp +msgid "Rotate 180 degrees" +msgstr "หมุน 180 องศา" + +#: editor/plugins/tile_map_editor_plugin.cpp +msgid "Rotate 270 degrees" +msgstr "หมุน 270 องศา" + +#: editor/plugins/tile_set_editor_plugin.cpp +msgid "Could not find tile:" +msgstr "ไม่พบ tile:" + +#: editor/plugins/tile_set_editor_plugin.cpp +msgid "Item name or ID:" +msgstr "ชื่อหรือ ID ไอเทม:" + +#: editor/plugins/tile_set_editor_plugin.cpp +msgid "Create from scene?" +msgstr "สร้างจากฉาก?" + +#: editor/plugins/tile_set_editor_plugin.cpp +msgid "Merge from scene?" +msgstr "รวมจากฉาก?" + +#: editor/plugins/tile_set_editor_plugin.cpp +msgid "Create from Scene" +msgstr "สร้างจากฉาก" + +#: editor/plugins/tile_set_editor_plugin.cpp +msgid "Merge from Scene" +msgstr "รวมจากฉาก" + +#: editor/plugins/tile_set_editor_plugin.cpp editor/script_editor_debugger.cpp +msgid "Error" +msgstr "ผิดพลาด" + +#: editor/project_export.cpp +#, fuzzy +msgid "Runnable" +msgstr "เปิด" + +#: editor/project_export.cpp +#, fuzzy +msgid "Delete patch '" +msgstr "ลบเลย์เอาต์" + +#: editor/project_export.cpp +#, fuzzy +msgid "Delete preset '%s'?" +msgstr "ลบไฟล์ที่เลือก?" + +#: editor/project_export.cpp +msgid "Presets" +msgstr "" + +#: editor/project_export.cpp editor/project_settings.cpp +msgid "Add.." +msgstr "เพิ่ม.." + +#: editor/project_export.cpp +msgid "Resources" +msgstr "" + +#: editor/project_export.cpp +#, fuzzy +msgid "Export all resources in the project" +msgstr "นำเข้าไฟล์มายังโปรเจกต์" + +#: editor/project_export.cpp +msgid "Export selected scenes (and dependencies)" +msgstr "" + +#: editor/project_export.cpp +msgid "Export selected resources (and dependencies)" +msgstr "" + +#: editor/project_export.cpp +msgid "Export Mode:" +msgstr "" + +#: editor/project_export.cpp +#, fuzzy +msgid "Resources to export:" +msgstr "รีซอร์ส:" + +#: editor/project_export.cpp +#, fuzzy +msgid "" +"Filters to export non-resource files (comma separated, e.g: *.json, *.txt)" +msgstr "ตัวกรองไฟล์ที่จะส่งออกเพิ่มเติม (คั่นด้วยจุลภาค ตัวอย่างเช่น: *.json, *.txt):" + +#: editor/project_export.cpp +#, fuzzy +msgid "" +"Filters to exclude files from project (comma separated, e.g: *.json, *.txt)" +msgstr "ตัวกรองไฟล์ที่จะไม่ส่งออก (เช่น *.json, *.txt):" + +#: editor/project_export.cpp +#, fuzzy +msgid "Patches" +msgstr "พบ:" + +#: editor/project_export.cpp +#, fuzzy +msgid "Make Patch" +msgstr "ตำแหน่งที่อยู่:" + +#: editor/project_export.cpp +msgid "Export templates for this platform are missing:" +msgstr "" + +#: editor/project_export.cpp +#, fuzzy +msgid "Export With Debug" +msgstr "ส่งออก Tile Set" + +#: editor/project_manager.cpp +msgid "Invalid project path, the path must exist!" +msgstr "ที่อยู่โปรเจกต์ผิดพลาด ต้องมีอยู่จริง!" + +#: editor/project_manager.cpp +#, fuzzy +msgid "Invalid project path, godot.cfg must not exist." +msgstr "ที่อยู่โปรเจกต์ผิดพลาด ต้องไม่มี engine.cfg" + +#: editor/project_manager.cpp +#, fuzzy +msgid "Invalid project path, godot.cfg must exist." +msgstr "ที่อยู่โปรเจกต์ผิดพลาด ต้องมี engine.cfg" + +#: editor/project_manager.cpp +msgid "Imported Project" +msgstr "นำเข้าโปรเจกต์แล้ว" + +#: editor/project_manager.cpp +msgid "Invalid project path (changed anything?)." +msgstr "" + +#: editor/project_manager.cpp +#, fuzzy +msgid "Couldn't create godot.cfg in project path." +msgstr "สร้างไฟล์ engine.cfg ไม่ได้" + +#: editor/project_manager.cpp +msgid "The following files failed extraction from package:" +msgstr "" + +#: editor/project_manager.cpp +msgid "Package Installed Successfully!" +msgstr "ติดตั้งแพคเกจเสร็จสมบูรณ์!" + +#: editor/project_manager.cpp +msgid "Import Existing Project" +msgstr "นำเข้าโปรเจกต์ที่มีอยู่เดิม" + +#: editor/project_manager.cpp +msgid "Project Path (Must Exist):" +msgstr "ที่อยู่โปรเจกต์ (ต้องมีอยู่จริง):" + +#: editor/project_manager.cpp +msgid "Project Name:" +msgstr "ชื่อโปรเจกต์:" + +#: editor/project_manager.cpp +msgid "Create New Project" +msgstr "สร้างโปรเจกต์ใหม่" + +#: editor/project_manager.cpp +msgid "Project Path:" +msgstr "ที่อยู่โปรเจกต์:" + +#: editor/project_manager.cpp +msgid "Install Project:" +msgstr "ติดตั้งโปรเจกต์:" + +#: editor/project_manager.cpp +msgid "Install" +msgstr "ติดตั้ง" + +#: editor/project_manager.cpp +msgid "Browse" +msgstr "เลือก" + +#: editor/project_manager.cpp +msgid "New Game Project" +msgstr "" + +#: editor/project_manager.cpp +msgid "That's a BINGO!" +msgstr "" + +#: editor/project_manager.cpp +msgid "Unnamed Project" +msgstr "โปรเจกต์ไม่มีชื่อ" + +#: editor/project_manager.cpp +msgid "Are you sure to open more than one project?" +msgstr "ยืนยันการเปิดโปรเจกต์มากกว่า 1 โปรเจกต์?" + +#: editor/project_manager.cpp +msgid "Are you sure to run more than one project?" +msgstr "ยืนยันการรันโปรเจกต์มากกว่า 1 โปรเจกต์?" + +#: editor/project_manager.cpp +msgid "Remove project from the list? (Folder contents will not be modified)" +msgstr "ลบโปรเจกต์ออกจากรายชื่อ? (โฟลเดอร์จะไม่ถูกลบ)" + +#: editor/project_manager.cpp +msgid "" +"You are about the scan %s folders for existing Godot projects. Do you " +"confirm?" +msgstr "จะทำการสแกนหาโปรเจกต์ใน %s โฟลเดอร์ ยืนยัน?" + +#: editor/project_manager.cpp +msgid "Project Manager" +msgstr "ตัวจัดการโปรเจกต์" + +#: editor/project_manager.cpp +msgid "Project List" +msgstr "รายชื่อโปรเจกต์" + +#: editor/project_manager.cpp +msgid "Run" +msgstr "รัน" + +#: editor/project_manager.cpp +msgid "Scan" +msgstr "สแกน" + +#: editor/project_manager.cpp +msgid "Select a Folder to Scan" +msgstr "เลือกโฟลเดอร์เพื่อสแกน" + +#: editor/project_manager.cpp +msgid "New Project" +msgstr "โปรเจกต์ใหม่" + +#: editor/project_manager.cpp +msgid "Exit" +msgstr "ออก" + +#: editor/project_settings.cpp +msgid "Key " +msgstr "ปุ่ม " + +#: editor/project_settings.cpp +msgid "Joy Button" +msgstr "ปุ่มจอย" + +#: editor/project_settings.cpp +msgid "Joy Axis" +msgstr "คันบังคับจอย" + +#: editor/project_settings.cpp +msgid "Mouse Button" +msgstr "ปุ่มเมาส์" + +#: editor/project_settings.cpp +msgid "Invalid action (anything goes but '/' or ':')." +msgstr "ชื่อการกระทำผิดพลาด (อะไรก็ได้ยกเว้น '/' และ ':')" + +#: editor/project_settings.cpp +msgid "Action '%s' already exists!" +msgstr "มีการกระทำ '%s' อยู่แล้ว!" + +#: editor/project_settings.cpp +msgid "Rename Input Action Event" +msgstr "เปลี่ยนชื่อการกระทำ" + +#: editor/project_settings.cpp +msgid "Add Input Action Event" +msgstr "เพิ่มการกระทำ" + +#: editor/project_settings.cpp editor/settings_config_dialog.cpp +#: scene/gui/input_action.cpp +#, fuzzy +msgid "Meta+" +msgstr "Meta+" + +#: editor/project_settings.cpp editor/settings_config_dialog.cpp +#: scene/gui/input_action.cpp +msgid "Shift+" +msgstr "Shift+" + +#: editor/project_settings.cpp editor/settings_config_dialog.cpp +#: scene/gui/input_action.cpp +#, fuzzy +msgid "Alt+" +msgstr "Alt+" + +#: editor/project_settings.cpp editor/settings_config_dialog.cpp +msgid "Control+" +msgstr "Control+" + +#: editor/project_settings.cpp editor/settings_config_dialog.cpp +msgid "Press a Key.." +msgstr "กดปุ่ม.." + +#: editor/project_settings.cpp +msgid "Mouse Button Index:" +msgstr "ปุ่มเมาส์:" + +#: editor/project_settings.cpp +msgid "Left Button" +msgstr "เมาส์ซ้าย" + +#: editor/project_settings.cpp +msgid "Right Button" +msgstr "เมาส์ขวา" + +#: editor/project_settings.cpp +msgid "Middle Button" +msgstr "เมาส์กลาง" + +#: editor/project_settings.cpp +msgid "Wheel Up Button" +msgstr "ล้อเมาส์ขึ้น" + +#: editor/project_settings.cpp +msgid "Wheel Down Button" +msgstr "ล้อเมาส์ลง" + +#: editor/project_settings.cpp +msgid "Button 6" +msgstr "ปุ่ม 6" + +#: editor/project_settings.cpp +msgid "Button 7" +msgstr "ปุ่ม 7" + +#: editor/project_settings.cpp +msgid "Button 8" +msgstr "ปุ่ม 8" + +#: editor/project_settings.cpp +msgid "Button 9" +msgstr "ปุ่ม 9" + +#: editor/project_settings.cpp +#, fuzzy +msgid "Joypad Axis Index:" +msgstr "คันบังคับจอย:" + +#: editor/project_settings.cpp scene/gui/input_action.cpp +#, fuzzy +msgid "Axis" +msgstr "แกน" + +#: editor/project_settings.cpp +#, fuzzy +msgid "Joypad Button Index:" +msgstr "ปุ่มจอย:" + +#: editor/project_settings.cpp +msgid "Add Input Action" +msgstr "เพิ่มการกระทำ" + +#: editor/project_settings.cpp +msgid "Erase Input Action Event" +msgstr "ลบการกระทำ" + +#: editor/project_settings.cpp scene/gui/input_action.cpp +#, fuzzy +msgid "Device" +msgstr "อุปกรณ์" + +#: editor/project_settings.cpp scene/gui/input_action.cpp +msgid "Button" +msgstr "ปุ่ม" + +#: editor/project_settings.cpp scene/gui/input_action.cpp +#, fuzzy +msgid "Left Button." +msgstr "ปุ่มเมาส์ซ้าย" + +#: editor/project_settings.cpp scene/gui/input_action.cpp +#, fuzzy +msgid "Right Button." +msgstr "ปุ่มเมาส์ขวา" + +#: editor/project_settings.cpp scene/gui/input_action.cpp +#, fuzzy +msgid "Middle Button." +msgstr "ปุ่มเมาส์กลาง" + +#: editor/project_settings.cpp scene/gui/input_action.cpp +#, fuzzy +msgid "Wheel Up." +msgstr "ล้อเมาส์ขึ้น" + +#: editor/project_settings.cpp scene/gui/input_action.cpp +#, fuzzy +msgid "Wheel Down." +msgstr "ล้อเมาส์ลง" + +#: editor/project_settings.cpp +msgid "Error saving settings." +msgstr "ผิดพลาดขณะบันทึกค่า" + +#: editor/project_settings.cpp +msgid "Settings saved OK." +msgstr "บันทึกแล้ว" + +#: editor/project_settings.cpp +msgid "Add Translation" +msgstr "เพิ่มการแปล" + +#: editor/project_settings.cpp +msgid "Remove Translation" +msgstr "ลบการแปล" + +#: editor/project_settings.cpp +msgid "Add Remapped Path" +msgstr "เพิ่มตำแหน่งแทนที่" + +#: editor/project_settings.cpp +msgid "Resource Remap Add Remap" +msgstr "" + +#: editor/project_settings.cpp +msgid "Change Resource Remap Language" +msgstr "เปลี่ยนภาษาที่ใช้แทนที่ไฟล์" + +#: editor/project_settings.cpp +msgid "Remove Resource Remap" +msgstr "ลบการแทนที่" + +#: editor/project_settings.cpp +msgid "Remove Resource Remap Option" +msgstr "ลบการแทนที่" + +#: editor/project_settings.cpp +#, fuzzy +msgid "Project Settings (godot.cfg)" +msgstr "ตัวเลือกโปรเจกต์ (engine.cfg)" + +#: editor/project_settings.cpp editor/settings_config_dialog.cpp +msgid "General" +msgstr "ทั่วไป" + +#: editor/project_settings.cpp editor/property_editor.cpp +msgid "Property:" +msgstr "คุณสมบัติ:" + +#: editor/project_settings.cpp +msgid "Del" +msgstr "ลบ" + +#: editor/project_settings.cpp +msgid "Copy To Platform.." +msgstr "คัดลอกไปยังแพลตฟอร์ม.." + +#: editor/project_settings.cpp +msgid "Input Map" +msgstr "ปุ่มกด" + +#: editor/project_settings.cpp +msgid "Action:" +msgstr "การกระทำ:" + +#: editor/project_settings.cpp +msgid "Device:" +msgstr "อุปกรณ์:" + +#: editor/project_settings.cpp +msgid "Index:" +msgstr "ดัชนี:" + +#: editor/project_settings.cpp +msgid "Localization" +msgstr "การแปล" + +#: editor/project_settings.cpp +msgid "Translations" +msgstr "การแปล" + +#: editor/project_settings.cpp +msgid "Translations:" +msgstr "การแปล:" + +#: editor/project_settings.cpp +msgid "Remaps" +msgstr "การแทนที่" + +#: editor/project_settings.cpp +msgid "Resources:" +msgstr "รีซอร์ส:" + +#: editor/project_settings.cpp +msgid "Remaps by Locale:" +msgstr "แทนที่ตามท้องถิ่น:" + +#: editor/project_settings.cpp +msgid "Locale" +msgstr "ท้องถิ่น" + +#: editor/project_settings.cpp +msgid "AutoLoad" +msgstr "ออโต้โหลด" + +#: editor/project_settings.cpp +msgid "Plugins" +msgstr "ปลั๊กอิน" + +#: editor/property_editor.cpp +#, fuzzy +msgid "Pick a Viewport" +msgstr "1 มุมมอง" + +#: editor/property_editor.cpp +msgid "Ease In" +msgstr "เข้านุ่มนวล" + +#: editor/property_editor.cpp +msgid "Ease Out" +msgstr "ออกนุ่มนวล" + +#: editor/property_editor.cpp +msgid "Zero" +msgstr "ศูนย์" + +#: editor/property_editor.cpp +msgid "Easing In-Out" +msgstr "เข้า-ออกนุ่มนวล" + +#: editor/property_editor.cpp +msgid "Easing Out-In" +msgstr "ออก-เข้านุ่มนวล" + +#: editor/property_editor.cpp +msgid "File.." +msgstr "ไฟล์.." + +#: editor/property_editor.cpp +msgid "Dir.." +msgstr "โฟลเดอร์.." + +#: editor/property_editor.cpp +msgid "Assign" +msgstr "ระบุ" + +#: editor/property_editor.cpp +msgid "New Script" +msgstr "สคริปต์ใหม่" + +#: editor/property_editor.cpp +#, fuzzy +msgid "Show in File System" +msgstr "ระบบไฟล์" + +#: editor/property_editor.cpp +msgid "Error loading file: Not a resource!" +msgstr "ผิดพลาดขณะโหลดไฟล์: ไม่ใช่รีซอร์ส!" + +#: editor/property_editor.cpp +msgid "Couldn't load image" +msgstr "โหลดภาพไม่ได้" + +#: editor/property_editor.cpp +#, fuzzy +msgid "Pick a Node" +msgstr "เลือกโหนด" + +#: editor/property_editor.cpp +msgid "Bit %d, val %d." +msgstr "บิต %d, ค่า %d" + +#: editor/property_editor.cpp +msgid "On" +msgstr "เปิด" + +#: editor/property_editor.cpp modules/visual_script/visual_script_editor.cpp +msgid "Set" +msgstr "กำหนด" + +#: editor/property_editor.cpp +msgid "Properties:" +msgstr "คุณสมบัติ:" + +#: editor/property_editor.cpp +msgid "Sections:" +msgstr "ส่วน:" + +#: editor/property_selector.cpp +msgid "Select Property" +msgstr "เลือกคุณสมบัติ" + +#: editor/property_selector.cpp +msgid "Select Method" +msgstr "เลือกเมท็อด" + +#: editor/pvrtc_compress.cpp +msgid "Could not execute PVRTC tool:" +msgstr "ใช้เครื่องมือ PVRTC ไม่ได้:" + +#: editor/pvrtc_compress.cpp +msgid "Can't load back converted image using PVRTC tool:" +msgstr "โหลดรูปที่แปลงแล้วด้วยเครื่องมือ PVRTC ไม่ได้:" + +#: editor/reparent_dialog.cpp editor/scene_tree_dock.cpp +msgid "Reparent Node" +msgstr "หาโหนดแม่ใหม่" + +#: editor/reparent_dialog.cpp +msgid "Reparent Location (Select new Parent):" +msgstr "เลือกโหนดแม่ใหม่:" + +#: editor/reparent_dialog.cpp +msgid "Keep Global Transform" +msgstr "" + +#: editor/reparent_dialog.cpp editor/scene_tree_dock.cpp +msgid "Reparent" +msgstr "เลือกโหนดแม่ใหม่" + +#: editor/resources_dock.cpp +msgid "Create New Resource" +msgstr "สร้างรีซอร์สใหม่" + +#: editor/resources_dock.cpp +msgid "Open Resource" +msgstr "เปิดรีซอร์ส" + +#: editor/resources_dock.cpp +msgid "Save Resource" +msgstr "บันทึกรีซอร์ส" + +#: editor/resources_dock.cpp +msgid "Resource Tools" +msgstr "เครื่องมือรีซอร์ส" + +#: editor/resources_dock.cpp +msgid "Make Local" +msgstr "" + +#: editor/run_settings_dialog.cpp +msgid "Run Mode:" +msgstr "" + +#: editor/run_settings_dialog.cpp +msgid "Current Scene" +msgstr "ฉากปัจจุบัน" + +#: editor/run_settings_dialog.cpp +msgid "Main Scene" +msgstr "ฉากหลัก" + +#: editor/run_settings_dialog.cpp +msgid "Main Scene Arguments:" +msgstr "ตัวแปรฉากหลัก:" + +#: editor/run_settings_dialog.cpp +msgid "Scene Run Settings" +msgstr "ตัวเลือกการรันฉาก" + +#: editor/scene_tree_dock.cpp +msgid "No parent to instance the scenes at." +msgstr "ไม่มีโหนดแม่เป็นที่อินสแตนซ์ฉาก" + +#: editor/scene_tree_dock.cpp +msgid "Error loading scene from %s" +msgstr "ผิดพลาดขณะโหลดฉากจาก %s" + +#: editor/scene_tree_dock.cpp +msgid "Ok" +msgstr "ตกลง" + +#: editor/scene_tree_dock.cpp +msgid "" +"Cannot instance the scene '%s' because the current scene exists within one " +"of its nodes." +msgstr "อินสแตนซ์ฉาก '%s' ไม่ได้เนื่องจากฉากปัจจุบันเป็นโหนดของฉากนั้น" + +#: editor/scene_tree_dock.cpp +msgid "Instance Scene(s)" +msgstr "อินสแตนซ์ฉาก" + +#: editor/scene_tree_dock.cpp +msgid "This operation can't be done on the tree root." +msgstr "ทำกับโหนดรากไม่ได้" + +#: editor/scene_tree_dock.cpp +msgid "Move Node In Parent" +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Move Nodes In Parent" +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "Duplicate Node(s)" +msgstr "ทำซ้ำโหนด" + +#: editor/scene_tree_dock.cpp +msgid "Delete Node(s)?" +msgstr "ลบโหนด?" + +#: editor/scene_tree_dock.cpp +msgid "This operation can't be done without a scene." +msgstr "ทำไม่ได้ถ้าไม่มีฉาก" + +#: editor/scene_tree_dock.cpp +msgid "Can not perform with the root node." +msgstr "" + +#: editor/scene_tree_dock.cpp +msgid "This operation can't be done on instanced scenes." +msgstr "ทำกับฉากที่เป็นอินสแตนซ์ไม่ได้" + +#: editor/scene_tree_dock.cpp +msgid "Save New Scene As.." +msgstr "บันทึกฉากใหม่เป็น.." + +#: editor/scene_tree_dock.cpp +msgid "Makes Sense!" +msgstr "เข้าใจ!" + +#: editor/scene_tree_dock.cpp +msgid "Can't operate on nodes from a foreign scene!" +msgstr "ทำกับโหนดของฉากอื่นไม่ได้!" + +#: editor/scene_tree_dock.cpp +msgid "Can't operate on nodes the current scene inherits from!" +msgstr "ทำกับโหนดที่ฉากปัจจุบันสืบทอดมาไม่ได้!" + +#: editor/scene_tree_dock.cpp +msgid "Remove Node(s)" +msgstr "ลบโหนด" + +#: editor/scene_tree_dock.cpp +msgid "" +"Couldn't save new scene. Likely dependencies (instances) couldn't be " +"satisfied." +msgstr "บันทึกฉากใหม่ไม่ได้ อาจจะมีการอ้างอิงไม่สมบูรณ์" + +#: editor/scene_tree_dock.cpp +msgid "Error saving scene." +msgstr "ผิดพลาดขณะบันทึกฉาก" + +#: editor/scene_tree_dock.cpp +msgid "Error duplicating scene to save it." +msgstr "ผิดพลาดขณะทำซ้ำฉากเพื่อบันทึก" + +#: editor/scene_tree_dock.cpp +msgid "Edit Groups" +msgstr "แก้ไขกลุ่ม" + +#: editor/scene_tree_dock.cpp +msgid "Edit Connections" +msgstr "แก้ไขการเชื่อมโยง" + +#: editor/scene_tree_dock.cpp +msgid "Delete Node(s)" +msgstr "ลบโหนด" + +#: editor/scene_tree_dock.cpp +msgid "Add Child Node" +msgstr "เพิ่มโหนดลูก" + +#: editor/scene_tree_dock.cpp +msgid "Instance Child Scene" +msgstr "อินสแตนซ์ฉากลูก" + +#: editor/scene_tree_dock.cpp +msgid "Change Type" +msgstr "เปลี่ยนประเภท" + +#: editor/scene_tree_dock.cpp +msgid "Attach Script" +msgstr "เชื่อมสคริปต์" + +#: editor/scene_tree_dock.cpp +msgid "Clear Script" +msgstr "ลบสคริปต์" + +#: editor/scene_tree_dock.cpp +msgid "Merge From Scene" +msgstr "รวมจากฉาก" + +#: editor/scene_tree_dock.cpp +msgid "Save Branch as Scene" +msgstr "บันทึกกิ่งเป็นฉาก" + +#: editor/scene_tree_dock.cpp +#, fuzzy +msgid "Copy Node Path" +msgstr "คัดลอกตำแหน่ง" + +#: editor/scene_tree_dock.cpp +msgid "Delete (No Confirm)" +msgstr "ลบ (ไม่ยืนยัน)" + +#: editor/scene_tree_dock.cpp +msgid "Add/Create a New Node" +msgstr "เพิ่ม/สร้างโหนดใหม่" + +#: editor/scene_tree_dock.cpp +msgid "" +"Instance a scene file as a Node. Creates an inherited scene if no root node " +"exists." +msgstr "อินสแตนซ์ฉากเป็นโหนด สร้างฉากสืบทอดถ้าไม่มีโหนดราก" + +#: editor/scene_tree_dock.cpp +msgid "Attach a new or existing script for the selected node." +msgstr "เชื่อมสคริปต์ใหม่หรือที่มีอยู่เดิมให้กับโหนดที่เลือก" + +#: editor/scene_tree_dock.cpp +msgid "Clear a script for the selected node." +msgstr "ลบสคริปต์ของโหนดที่เลือก" + +#: editor/scene_tree_editor.cpp +msgid "Toggle Spatial Visible" +msgstr "ซ่อน/แสดงโหนด Spatial" + +#: editor/scene_tree_editor.cpp +msgid "Toggle CanvasItem Visible" +msgstr "ซ่อน/แสดงโหนด CanvasItem" + +#: editor/scene_tree_editor.cpp +msgid "Instance:" +msgstr "อินสแตนซ์:" + +#: editor/scene_tree_editor.cpp +msgid "Invalid node name, the following characters are not allowed:" +msgstr "ชื่อโหนดไม่ถูกต้อง ใช้ตัวอักษรต่อไปนี้ไม่ได้:" + +#: editor/scene_tree_editor.cpp +msgid "Rename Node" +msgstr "เปลี่ยนชื่อโหนด" + +#: editor/scene_tree_editor.cpp +msgid "Scene Tree (Nodes):" +msgstr "ผังฉาก (โหนด):" + +#: editor/scene_tree_editor.cpp +msgid "Editable Children" +msgstr "แก้ไขโหนดลูกได้" + +#: editor/scene_tree_editor.cpp +msgid "Load As Placeholder" +msgstr "โหลดเป็นตัวแทน" + +#: editor/scene_tree_editor.cpp +msgid "Discard Instancing" +msgstr "ยกเลิกการอินสแตนซ์" + +#: editor/scene_tree_editor.cpp +msgid "Open in Editor" +msgstr "เปิดในโปรแกรมแก้ไข" + +#: editor/scene_tree_editor.cpp +msgid "Clear Inheritance" +msgstr "ลบการสืบทอด" + +#: editor/scene_tree_editor.cpp +msgid "Clear Inheritance? (No Undo!)" +msgstr "ลบการสืบทอด? (ย้อนกลับไม่ได้!)" + +#: editor/scene_tree_editor.cpp +msgid "Clear!" +msgstr "ลบ!" + +#: editor/scene_tree_editor.cpp +msgid "Select a Node" +msgstr "เลือกโหนด" + +#: editor/script_create_dialog.cpp +msgid "Invalid parent class name" +msgstr "ชื่อคลาสแม่ไม่ถูกต้อง" + +#: editor/script_create_dialog.cpp +msgid "Valid chars:" +msgstr "อักขระที่ใช้ได้:" + +#: editor/script_create_dialog.cpp +msgid "Invalid class name" +msgstr "ชื่อคลาสไม่ถูกต้อง" + +#: editor/script_create_dialog.cpp +msgid "Valid name" +msgstr "ชื่อที่ใช้ได้" + +#: editor/script_create_dialog.cpp +msgid "N/A" +msgstr "" + +#: editor/script_create_dialog.cpp +msgid "Class name is invalid!" +msgstr "ชื่อคลาสไม่ถูกต้อง!" + +#: editor/script_create_dialog.cpp +msgid "Parent class name is invalid!" +msgstr "ชื่อคลาสแม่ไม่ถูกต้อง!" + +#: editor/script_create_dialog.cpp +msgid "Invalid path!" +msgstr "ตำแหน่งที่อยู่ไม่ถูกต้อง!" + +#: editor/script_create_dialog.cpp +msgid "Could not create script in filesystem." +msgstr "สร้างสคริปต์ในระบบไฟล์ไม่ได้" + +#: editor/script_create_dialog.cpp +msgid "Error loading script from %s" +msgstr "ผิดพลาดขณะโหลดสคริปต์จาก %s" + +#: editor/script_create_dialog.cpp +msgid "Path is empty" +msgstr "ตำแหน่งที่อยู่ว่างเปล่า" + +#: editor/script_create_dialog.cpp +msgid "Path is not local" +msgstr "ตำแหน่งที่อยู่ไม่ใช่ภายใน" + +#: editor/script_create_dialog.cpp +msgid "Invalid base path" +msgstr "" + +#: editor/script_create_dialog.cpp +msgid "Invalid extension" +msgstr "นามสกุลไม่ถูกต้อง" + +#: editor/script_create_dialog.cpp +msgid "Create new script" +msgstr "สร้างสคริปต์ใหม่" + +#: editor/script_create_dialog.cpp +msgid "Load existing script" +msgstr "โหลดสคริปต์ที่มีอยู่เดิม" + +#: editor/script_create_dialog.cpp +msgid "Class Name:" +msgstr "ชื่อคลาส:" + +#: editor/script_create_dialog.cpp +msgid "Built-In Script" +msgstr "ฝังสคริปต์" + +#: editor/script_create_dialog.cpp +msgid "Attach Node Script" +msgstr "เชื่อมสคริปต์ให้โหนด" + +#: editor/script_editor_debugger.cpp +msgid "Bytes:" +msgstr "ไบต์:" + +#: editor/script_editor_debugger.cpp +msgid "Warning" +msgstr "คำเตือน" + +#: editor/script_editor_debugger.cpp +msgid "Error:" +msgstr "ผิดพลาด:" + +#: editor/script_editor_debugger.cpp +msgid "Source:" +msgstr "ต้นฉบับ:" + +#: editor/script_editor_debugger.cpp +msgid "Function:" +msgstr "ฟังก์ชัน:" + +#: editor/script_editor_debugger.cpp +msgid "Errors" +msgstr "ผิดพลาด" + +#: editor/script_editor_debugger.cpp +msgid "Child Process Connected" +msgstr "เชื่อมกระบวนการแล้ว" + +#: editor/script_editor_debugger.cpp +msgid "Inspect Previous Instance" +msgstr "ตรวจสอบอินสแตนซ์ก่อนหน้า" + +#: editor/script_editor_debugger.cpp +msgid "Inspect Next Instance" +msgstr "ตรวจสอบอินสแตนซ์ถัดไป" + +#: editor/script_editor_debugger.cpp +msgid "Stack Frames" +msgstr "สแตค" + +#: editor/script_editor_debugger.cpp +msgid "Variable" +msgstr "ตัวแปร" + +#: editor/script_editor_debugger.cpp +msgid "Errors:" +msgstr "ผิดพลาด:" + +#: editor/script_editor_debugger.cpp +msgid "Stack Trace (if applicable):" +msgstr "สแตค (ถ้ามี):" + +#: editor/script_editor_debugger.cpp +msgid "Remote Inspector" +msgstr "ตรวจสอบรีโมท" + +#: editor/script_editor_debugger.cpp +msgid "Live Scene Tree:" +msgstr "ผังฉากปัจจุบัน:" + +#: editor/script_editor_debugger.cpp +msgid "Remote Object Properties: " +msgstr "คุณสมบัติวัตถุรีโมท: " + +#: editor/script_editor_debugger.cpp +msgid "Profiler" +msgstr "ประสิทธิภาพ" + +#: editor/script_editor_debugger.cpp +msgid "Monitor" +msgstr "สังเกตการณ์" + +#: editor/script_editor_debugger.cpp +msgid "Value" +msgstr "ค่า" + +#: editor/script_editor_debugger.cpp +msgid "Monitors" +msgstr "การสังเกตการณ์" + +#: editor/script_editor_debugger.cpp +msgid "List of Video Memory Usage by Resource:" +msgstr "รายชื่อรีซอร์สที่ใช้หน่วยความจำวีดีโอ:" + +#: editor/script_editor_debugger.cpp +msgid "Total:" +msgstr "ทั้งหมด:" + +#: editor/script_editor_debugger.cpp +msgid "Video Mem" +msgstr "หน่วยความจำวีดีโอ" + +#: editor/script_editor_debugger.cpp +msgid "Resource Path" +msgstr "ตำแหน่งรีซอร์ส" + +#: editor/script_editor_debugger.cpp +msgid "Type" +msgstr "ประเภท" + +#: editor/script_editor_debugger.cpp +msgid "Usage" +msgstr "ใช้" + +#: editor/script_editor_debugger.cpp +msgid "Misc" +msgstr "อื่น ๆ" + +#: editor/script_editor_debugger.cpp +msgid "Clicked Control:" +msgstr "คอนโทรลที่คลิก:" + +#: editor/script_editor_debugger.cpp +msgid "Clicked Control Type:" +msgstr "ประเภทของคอนโทรลที่คลิก:" + +#: editor/script_editor_debugger.cpp +msgid "Live Edit Root:" +msgstr "" + +#: editor/script_editor_debugger.cpp +#, fuzzy +msgid "Set From Tree" +msgstr "กำหนดจากผัง" + +#: editor/settings_config_dialog.cpp +msgid "Shortcuts" +msgstr "ทางลัด" + +#: editor/spatial_editor_gizmos.cpp +msgid "Change Light Radius" +msgstr "ปรับรัศมีแสง" + +#: editor/spatial_editor_gizmos.cpp +msgid "Change Camera FOV" +msgstr "ปรับ FOV กล้อง" + +#: editor/spatial_editor_gizmos.cpp +msgid "Change Camera Size" +msgstr "ปรับขนาดกล้อง" + +#: editor/spatial_editor_gizmos.cpp +msgid "Change Sphere Shape Radius" +msgstr "ปรับรัศมีทรงกลม" + +#: editor/spatial_editor_gizmos.cpp +msgid "Change Box Shape Extents" +msgstr "ปรับขนาดทรงสี่เหลี่ยม" + +#: editor/spatial_editor_gizmos.cpp +msgid "Change Capsule Shape Radius" +msgstr "ปรับรัศมีทรงแคปซูล" + +#: editor/spatial_editor_gizmos.cpp +msgid "Change Capsule Shape Height" +msgstr "ปรับความสูงทรงแคปซูล" + +#: editor/spatial_editor_gizmos.cpp +msgid "Change Ray Shape Length" +msgstr "ปรับความยาวรังสี" + +#: editor/spatial_editor_gizmos.cpp +#, fuzzy +msgid "Change Notifier Extents" +msgstr "ปรับขนาด Notifier" + +#: editor/spatial_editor_gizmos.cpp +#, fuzzy +msgid "Change Probe Extents" +msgstr "ปรับขนาด Probe" + +#: modules/gdscript/gd_functions.cpp +#: modules/visual_script/visual_script_builtin_funcs.cpp +#, fuzzy +msgid "Invalid type argument to convert(), use TYPE_* constants." +msgstr "ตัวแปรใน convert() ผิดพลาด ใช้ค่าคงที่ TYPE_* เท่านั้น" + +#: modules/gdscript/gd_functions.cpp +#: modules/visual_script/visual_script_builtin_funcs.cpp +#, fuzzy +msgid "Not enough bytes for decoding bytes, or invalid format." +msgstr "ไบต์ไม่ครบหรือผิดรูปแบบ ไม่สามารถแปลงค่าได้" + +#: modules/gdscript/gd_functions.cpp +#, fuzzy +msgid "step argument is zero!" +msgstr "ตัวแปร step เป็นศูนย์!" + +#: modules/gdscript/gd_functions.cpp +#, fuzzy +msgid "Not a script with an instance" +msgstr "ไม่ใช่สคริปต์ที่มีอินสแตนซ์" + +#: modules/gdscript/gd_functions.cpp +#, fuzzy +msgid "Not based on a script" +msgstr "ไม่ได้มีต้นกำเนิดจากสคริปต์" + +#: modules/gdscript/gd_functions.cpp +#, fuzzy +msgid "Not based on a resource file" +msgstr "ไม่ได้มีต้นกำเนิดมาจากไฟล์รีซอร์ส" + +#: modules/gdscript/gd_functions.cpp +#, fuzzy +msgid "Invalid instance dictionary format (missing @path)" +msgstr "รูปแบบดิกชันนารีที่เก็บอินสแตนซ์ไม่ถูกต้อง (ไม่มี @path)" + +#: modules/gdscript/gd_functions.cpp +#, fuzzy +msgid "Invalid instance dictionary format (can't load script at @path)" +msgstr "รูปแบบดิกชันนารีที่เก็บอินสแตนซ์ไม่ถูกต้อง (โหลดสคริปต์ที่ @path ไม่ได้)" + +#: modules/gdscript/gd_functions.cpp +#, fuzzy +msgid "Invalid instance dictionary format (invalid script at @path)" +msgstr "รูปแบบดิกชันนารีที่เก็บอินสแตนซ์ไม่ถูกต้อง (สคริปต์ที่ @path ผิดพลาด)" + +#: modules/gdscript/gd_functions.cpp +#, fuzzy +msgid "Invalid instance dictionary (invalid subclasses)" +msgstr "ดิกชันนารีที่เก็บอินสแตนซ์ผิดพลาด (คลาสย่อยผิดพลาด)" + +#: modules/visual_script/visual_script.cpp +#, fuzzy +msgid "" +"A node yielded without working memory, please read the docs on how to yield " +"properly!" +msgstr "" +"โหนดหยุดพักโปรแกรมโดยที่ไม่มีหน่วยความจำทำงาน กรุณาอ่านคู่มือเพื่อหยุดพักโปรแกรมให้ถูกต้อง!" + +#: modules/visual_script/visual_script.cpp +#, fuzzy +msgid "" +"Node yielded, but did not return a function state in the first working " +"memory." +msgstr "โหนดหยุดพัก แต่ไม่ได้คืนสถานะฟังก์ชันในหน่วยความจำทำงานแรก" + +#: modules/visual_script/visual_script.cpp +#, fuzzy +msgid "" +"Return value must be assigned to first element of node working memory! Fix " +"your node please." +msgstr "ค่าที่คืนจะต้องกำหนดในหน่วยความจำทำงานแรก! กรุณาแก้ไขโหนด" + +#: modules/visual_script/visual_script.cpp +#, fuzzy +msgid "Node returned an invalid sequence output: " +msgstr "โหนดคืนค่าผิดลำดับ: " + +#: modules/visual_script/visual_script.cpp +#, fuzzy +msgid "Found sequence bit but not the node in the stack, report bug!" +msgstr "พบบิตลำดับแต่ไม่พบโหนดในสแตค กรุณารายงานข้อผิดพลาด!" + +#: modules/visual_script/visual_script.cpp +#, fuzzy +msgid "Stack overflow with stack depth: " +msgstr "สแตคล้น ความสูงสแตค: " + +#: modules/visual_script/visual_script_editor.cpp +msgid "Functions:" +msgstr "ฟังก์ชัน:" + +#: modules/visual_script/visual_script_editor.cpp +#, fuzzy +msgid "Variables:" +msgstr "ตัวแปร:" + +#: modules/visual_script/visual_script_editor.cpp +#, fuzzy +msgid "Name is not a valid identifier:" +msgstr "ไม่สามารถใช้ชื่อนี้ได้:" + +#: modules/visual_script/visual_script_editor.cpp +#, fuzzy +msgid "Name already in use by another func/var/signal:" +msgstr "มีฟังก์ชัน/ตัวแปร/สัญญาณอื่นใช้ชื่อนี้แล้ว:" + +#: modules/visual_script/visual_script_editor.cpp +#, fuzzy +msgid "Rename Function" +msgstr "เปลี่ยนชื่อฟังก์ชัน" + +#: modules/visual_script/visual_script_editor.cpp +#, fuzzy +msgid "Rename Variable" +msgstr "เปลี่ยนชื่อตัวแปร" + +#: modules/visual_script/visual_script_editor.cpp +#, fuzzy +msgid "Rename Signal" +msgstr "เปลี่ยนชื่อสัญญาณ" + +#: modules/visual_script/visual_script_editor.cpp +#, fuzzy +msgid "Add Function" +msgstr "เพิ่มฟังก์ชัน" + +#: modules/visual_script/visual_script_editor.cpp +#, fuzzy +msgid "Add Variable" +msgstr "เพิ่มตัวแปร" + +#: modules/visual_script/visual_script_editor.cpp +#, fuzzy +msgid "Add Signal" +msgstr "เพิ่มสัญญาณ" + +#: modules/visual_script/visual_script_editor.cpp +#, fuzzy +msgid "Remove Function" +msgstr "ลบฟังก์ชัน" + +#: modules/visual_script/visual_script_editor.cpp +#, fuzzy +msgid "Remove Variable" +msgstr "ลบตัวแปร" + +#: modules/visual_script/visual_script_editor.cpp +#, fuzzy +msgid "Editing Variable:" +msgstr "แก้ไขตัวแปร:" + +#: modules/visual_script/visual_script_editor.cpp +#, fuzzy +msgid "Remove Signal" +msgstr "ลบสัญญาณ" + +#: modules/visual_script/visual_script_editor.cpp +#, fuzzy +msgid "Editing Signal:" +msgstr "แก้ไขสัญญาณ:" + +#: modules/visual_script/visual_script_editor.cpp +#, fuzzy +msgid "Change Expression" +msgstr "แก้ไขสมการ" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Add Node" +msgstr "เพิ่มโหนด" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Hold Meta to drop a Getter. Hold Shift to drop a generic signature." +msgstr "กดปุ่ม Meta ค้างเพื่อวาง Getter กด Shift ค้างเพื่อวาง generic signature" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Hold Ctrl to drop a Getter. Hold Shift to drop a generic signature." +msgstr "กด Ctrl ค้างเพื่อวาง Getter กด Shift ค้างเพื่อวาง generic signature" + +#: modules/visual_script/visual_script_editor.cpp +#, fuzzy +msgid "Hold Meta to drop a simple reference to the node." +msgstr "กดปุ่ม Meta เพื่อวางการอ้างอิงไปยังโหนดอย่างง่าย" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Hold Ctrl to drop a simple reference to the node." +msgstr "กด Ctrl เพื่อวางการอ้างอิงไปยังโหนดอย่างง่าย" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Hold Meta to drop a Variable Setter." +msgstr "กดปุ่ม Meta ค้างเพื่อวาง Setter ของตัวแปร" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Hold Ctrl to drop a Variable Setter." +msgstr "กด Ctrl ค้างเพื่อวาง Setter ของตัวแปร" + +#: modules/visual_script/visual_script_editor.cpp +#, fuzzy +msgid "Add Preload Node" +msgstr "เพิ่มโหนด Preload" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Add Node(s) From Tree" +msgstr "เพิ่มโหนดจากผัง" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Add Getter Property" +msgstr "เพิ่มตัวรับคุณสมบัติ" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Add Setter Property" +msgstr "เพิ่มตัวกำหนดคุณสมบัติ" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Condition" +msgstr "เงื่อนไข" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Sequence" +msgstr "ลำดับ" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Switch" +msgstr "ทางเลือก" + +#: modules/visual_script/visual_script_editor.cpp +#, fuzzy +msgid "Iterator" +msgstr "ตัววนซ้ำ" + +#: modules/visual_script/visual_script_editor.cpp +#, fuzzy +msgid "While" +msgstr "ทำซ้ำถ้าเงื่อนไขเป็นจริง" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Return" +msgstr "คืนค่า" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Get" +msgstr "รับ" + +#: modules/visual_script/visual_script_editor.cpp +#, fuzzy +msgid "Base Type:" +msgstr "ชนิด:" + +#: modules/visual_script/visual_script_editor.cpp +#, fuzzy +msgid "Available Nodes:" +msgstr "โหนดที่มีให้ใช้:" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Select or create a function to edit graph" +msgstr "เลือกหรือสร้างฟังก์ชันเพื่อแก้ไขกราฟ" + +#: modules/visual_script/visual_script_editor.cpp +#, fuzzy +msgid "Edit Signal Arguments:" +msgstr "แก้ไขตัวแปรสัญญาณ:" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Edit Variable:" +msgstr "แก้ไขตัวแปร:" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Change" +msgstr "เปลี่ยน" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Delete Selected" +msgstr "ลบสิ่งที่เลือก" + +#: modules/visual_script/visual_script_editor.cpp +#, fuzzy +msgid "Find Node Type" +msgstr "หาชนิดของโหนด" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Copy Nodes" +msgstr "คัดลอกโหนด" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Cut Nodes" +msgstr "ตัดโหนด" + +#: modules/visual_script/visual_script_editor.cpp +msgid "Paste Nodes" +msgstr "วางโหนด" + +#: modules/visual_script/visual_script_flow_control.cpp +#, fuzzy +msgid "Input type not iterable: " +msgstr "ชนิดตัวแปรนี้ใช้วนซ้ำไม่ได้: " + +#: modules/visual_script/visual_script_flow_control.cpp +msgid "Iterator became invalid" +msgstr "ตัววนซ้ำใช้ไม่ได้อีกต่อไป" + +#: modules/visual_script/visual_script_flow_control.cpp +msgid "Iterator became invalid: " +msgstr "ตัววนซ้ำใช้ไม่ได้: " + +#: modules/visual_script/visual_script_func_nodes.cpp +msgid "Invalid index property name." +msgstr "ไม่พบคุณสมบัติ" + +#: modules/visual_script/visual_script_func_nodes.cpp +#, fuzzy +msgid "Base object is not a Node!" +msgstr "วัตถุนี้ไม่ใช่โหนด!" + +#: modules/visual_script/visual_script_func_nodes.cpp +#, fuzzy +msgid "Path does not lead Node!" +msgstr "ตำแหน่งที่ระบุไม่ได้นำไปยังโหนด!" + +#: modules/visual_script/visual_script_func_nodes.cpp +msgid "Invalid index property name '%s' in node %s." +msgstr "ไม่พบคุณสมบัติ '%s' ในโหนด %s" + +#: modules/visual_script/visual_script_nodes.cpp +#, fuzzy +msgid ": Invalid argument of type: " +msgstr ": ชนิดตัวแปรไม่ถูกต้อง: " + +#: modules/visual_script/visual_script_nodes.cpp +#, fuzzy +msgid ": Invalid arguments: " +msgstr ": ตัวแปรไม่ถูกต้อง: " + +#: modules/visual_script/visual_script_nodes.cpp +msgid "VariableGet not found in script: " +msgstr "ไม่พบ VariableGet ในสคริปต์: " + +#: modules/visual_script/visual_script_nodes.cpp +msgid "VariableSet not found in script: " +msgstr "ไม่พบ VariableSet ในสคริปต์: " + +#: modules/visual_script/visual_script_nodes.cpp +msgid "Custom node has no _step() method, can't process graph." +msgstr "โหนดกำหนดเองไม่มีเมท็อด _step() ไม่สามารถประมวลผลกราฟได้" + +#: modules/visual_script/visual_script_nodes.cpp +#, fuzzy +msgid "" +"Invalid return value from _step(), must be integer (seq out), or string " +"(error)." +msgstr "ค่าคืนจาก _step() ผิดพลาด ต้องเป็นจำนวนเต็ม (ลำดับ) หรือสตริง (ข้อผิดพลาด)" + +#: modules/visual_script/visual_script_nodes.cpp +#, fuzzy +msgid "just pressed" +msgstr "เพิ่งกด" + +#: modules/visual_script/visual_script_nodes.cpp +#, fuzzy +msgid "just released" +msgstr "เพิ่งปล่อย" + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Run in Browser" +msgstr "เลือก" + +#: platform/javascript/export/export.cpp +msgid "Run exported HTML in the system's default browser." +msgstr "" + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not write file:\n" +msgstr "ไม่พบ tile:" + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not read file:\n" +msgstr "ไม่พบ tile:" + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not open template for export:\n" +msgstr "ไม่สามารถสร้างโฟลเดอร์" + +#: platform/uwp/export/export.cpp +#, fuzzy +msgid "" +"Couldn't read the certificate file. Are the path and password both correct?" +msgstr "ไม่สามารถอ่านไฟล์ใบรับรองได้ ตำแหน่งไฟล์และรหัสผ่านถูกต้องหรือไม่?" + +#: platform/uwp/export/export.cpp +msgid "Error creating the signature object." +msgstr "ผิดพลาดขณะสร้าง signature object" + +#: platform/uwp/export/export.cpp +msgid "Error creating the package signature." +msgstr "ผิดพลาดขณะสร้าง signature ของแพคเกจ" + +#: platform/uwp/export/export.cpp +#, fuzzy +msgid "" +"No export templates found.\n" +"Download and install export templates." +msgstr "" +"ไม่มีแม่แบบสำหรับส่งออก\n" +"ดาวน์โหลดและติดตั้งแม่แบบ" + +#: platform/uwp/export/export.cpp +msgid "Custom debug package not found." +msgstr "ไม่พบแพคเกจดีบัคที่กำหนด" + +#: platform/uwp/export/export.cpp +msgid "Custom release package not found." +msgstr "ไม่พบแพคเกจจำหน่ายที่กำหนด" + +#: platform/uwp/export/export.cpp +msgid "Invalid unique name." +msgstr "ชื่อเฉพาะไม่ถูกต้อง" + +#: platform/uwp/export/export.cpp +msgid "Invalid product GUID." +msgstr "GUID ของโปรแกรมไม่ถูกต้อง" + +#: platform/uwp/export/export.cpp +msgid "Invalid publisher GUID." +msgstr "GUID ของผู้จัดจำหน่ายไม่ถูกต้อง" + +#: platform/uwp/export/export.cpp +#, fuzzy +msgid "Invalid background color." +msgstr "สีพื้นหลังผิดพลาด" + +#: platform/uwp/export/export.cpp +#, fuzzy +msgid "Invalid Store Logo image dimensions (should be 50x50)." +msgstr "ขนาดรูปโลโก้ Store ผิดพลาด (ต้องเป็น 50x50)" + +#: platform/uwp/export/export.cpp +#, fuzzy +msgid "Invalid square 44x44 logo image dimensions (should be 44x44)." +msgstr "ขนาดโลโก้จัตุรัส 44x44 ผิดพลาด (ต้องเป็น 44x44)" + +#: platform/uwp/export/export.cpp +#, fuzzy +msgid "Invalid square 71x71 logo image dimensions (should be 71x71)." +msgstr "ขนาดโลโก้จัตุรัส 71x71 ผิดพลาด (ต้องเป็น 71x71)" + +#: platform/uwp/export/export.cpp +#, fuzzy +msgid "Invalid square 150x150 logo image dimensions (should be 150x150)." +msgstr "ขนาดโลโก้จัตุรัส 150x150 ผิดพลาด (ต้องเป็น 150x150)" + +#: platform/uwp/export/export.cpp +#, fuzzy +msgid "Invalid square 310x310 logo image dimensions (should be 310x310)." +msgstr "ขนาดโลโก้จัตุรัส 310x310 ผิดพลาด (ต้องเป็น 310x310)" + +#: platform/uwp/export/export.cpp +#, fuzzy +msgid "Invalid wide 310x150 logo image dimensions (should be 310x150)." +msgstr "ขนาดโลโก้กว้าง 310x150 ผิดพลาด (ต้องเป็น 310x150)" + +#: platform/uwp/export/export.cpp +#, fuzzy +msgid "Invalid splash screen image dimensions (should be 620x300)." +msgstr "ขนาดรูปหน้าจอเริ่มโปรแกรมผิดพลาด (ต้องเป็น 620x300)" + +#: scene/2d/animated_sprite.cpp +#, fuzzy +msgid "" +"A SpriteFrames resource must be created or set in the 'Frames' property in " +"order for AnimatedSprite to display frames." +msgstr "ต้องมี SpriteFrames ใน 'Frames' เพื่อให้ AnimatedSprite แสดงผลได้" + +#: scene/2d/canvas_modulate.cpp +#, fuzzy +msgid "" +"Only one visible CanvasModulate is allowed per scene (or set of instanced " +"scenes). The first created one will work, while the rest will be ignored." +msgstr "" +"จะมี CanvasModulate ที่มองเห็นได้เพียงโหนดเดียวในฉาก (หรือกลุ่มของฉากที่เป็นอินสแตนซ์) " +"โหนดแรกเท่านั้นที่จะทำงานได้ปกติ ที่เหลือจะไม่ทำงาน" + +#: scene/2d/collision_polygon_2d.cpp +#, fuzzy +msgid "" +"CollisionPolygon2D only serves to provide a collision shape to a " +"CollisionObject2D derived node. Please only use it as a child of Area2D, " +"StaticBody2D, RigidBody2D, KinematicBody2D, etc. to give them a shape." +msgstr "" +"CollisionPolygon2D ใช้ประโยชน์เป็นรูปทรงสำหรับโหนดกลุ่ม CollisionObject2D " +"จึงควรใช้เป็นโหนดลูกของ Area2D, StaticBody2D, RigidBody2D, KinematicBody2D ฯลฯ " +"เพื่อให้มีรูปทรง" + +#: scene/2d/collision_polygon_2d.cpp +#, fuzzy +msgid "An empty CollisionPolygon2D has no effect on collision." +msgstr "CollisionPolygon2D ที่ว่างเปล่าจะไม่มีผลทางกายภาพ" + +#: scene/2d/collision_shape_2d.cpp +#, fuzzy +msgid "" +"CollisionShape2D only serves to provide a collision shape to a " +"CollisionObject2D derived node. Please only use it as a child of Area2D, " +"StaticBody2D, RigidBody2D, KinematicBody2D, etc. to give them a shape." +msgstr "" +"CollisionShape2D ใช้ประโยชน์เป็นรูปทรงสำหรับโหนดกลุ่ม CollisionObject2D " +"จึงควรใช้เป็นโหนดลูกของ Area2D, StaticBody2D, RigidBody2D, KinematicBody2D ฯลฯ " +"เพื่อให้มีรูปทรง" + +#: scene/2d/collision_shape_2d.cpp +#, fuzzy +msgid "" +"A shape must be provided for CollisionShape2D to function. Please create a " +"shape resource for it!" +msgstr "ต้องมีรูปทรงเพื่อให้ CollisionShape2D ทำงานได้ กรุณาสร้างรูปทรง" + +#: scene/2d/light_2d.cpp +#, fuzzy +msgid "" +"A texture with the shape of the light must be supplied to the 'texture' " +"property." +msgstr "ต้องมีรูปร่างของแสงอยู่ใน 'texture'" + +#: scene/2d/light_occluder_2d.cpp +#, fuzzy +msgid "" +"An occluder polygon must be set (or drawn) for this occluder to take effect." +msgstr "ต้องมีรูปหลายเหลี่ยมเพื่อให้ตัวบังแสงนี้ทำงานได้" + +#: scene/2d/light_occluder_2d.cpp +#, fuzzy +msgid "The occluder polygon for this occluder is empty. Please draw a polygon!" +msgstr "รูปหลายเหลี่ยมของตัวบังแสงนี้ว่างเปล่า กรุณาวาดรูปหลายเหลี่ยม!" + +#: scene/2d/navigation_polygon.cpp +#, fuzzy +msgid "" +"A NavigationPolygon resource must be set or created for this node to work. " +"Please set a property or draw a polygon." +msgstr "" +"ต้องมี NavigationPolygon เพื่อให้โหนดนี้ทำงานได้ กรุณาแก้ไขคุณสมบัติหรือวาดรูปหลายเหลี่ยม" + +#: scene/2d/navigation_polygon.cpp +#, fuzzy +msgid "" +"NavigationPolygonInstance must be a child or grandchild to a Navigation2D " +"node. It only provides navigation data." +msgstr "" +"NavigationPolygonInstance ต้องเป็นโหนดลูก/หลานของโหนด Navigation2D " +"เนื่องจากโหนดนี้ใช้เก็บข้อมูลการนำทางเท่านั้น" + +#: scene/2d/parallax_layer.cpp +#, fuzzy +msgid "" +"ParallaxLayer node only works when set as child of a ParallaxBackground node." +msgstr "ParallaxLayer จะทำงานได้ต้องเป็นโหนดลูกของโหนด ParallaxBackground" + +#: scene/2d/particles_2d.cpp +#, fuzzy +msgid "Path property must point to a valid Particles2D node to work." +msgstr "ต้องแก้ไข Path ให้ชี้ไปยังโหนด Particles2D จึงจะทำงานได้" + +#: scene/2d/path_2d.cpp +#, fuzzy +msgid "PathFollow2D only works when set as a child of a Path2D node." +msgstr "PathFollow2D จะทำงานได้ต้องเป็นโหนดลูกของโหนด Path2D" + +#: scene/2d/remote_transform_2d.cpp +#, fuzzy +msgid "Path property must point to a valid Node2D node to work." +msgstr "ต้องแก้ไข Path ให้ชี้ไปยังโหนด Node2D จึงจะทำงานได้" + +#: scene/2d/sprite.cpp +#, fuzzy +msgid "" +"Path property must point to a valid Viewport node to work. Such Viewport " +"must be set to 'render target' mode." +msgstr "" +"ต้องแก้ไข Path ให้ชี้ไปยังโหนด Viewport จึงจะทำงานได้ และ Viewport นั้นต้องปรับโหมดเป็น " +"'render target'" + +#: scene/2d/sprite.cpp +#, fuzzy +msgid "" +"The Viewport set in the path property must be set as 'render target' in " +"order for this sprite to work." +msgstr "Viewport ใน path จะต้องปรับโหมดเป็น 'render target' จึงจะทำงานได้" + +#: scene/2d/visibility_notifier_2d.cpp +#, fuzzy +msgid "" +"VisibilityEnable2D works best when used with the edited scene root directly " +"as parent." +msgstr "VisibilityEnable2D ควรจะเป็นโหนดลูกของโหนดหลักในฉากนี้" + +#: scene/3d/body_shape.cpp +#, fuzzy +msgid "" +"CollisionShape only serves to provide a collision shape to a CollisionObject " +"derived node. Please only use it as a child of Area, StaticBody, RigidBody, " +"KinematicBody, etc. to give them a shape." +msgstr "" +"CollisionShape ใช้ประโยชน์เป็นรูปทรงสำหรับโหนดกลุ่ม CollisionObject " +"จึงควรใช้เป็นโหนดลูกของ Area, StaticBody, RigidBody, KinematicBody ฯลฯ " +"เพื่อให้มีรูปทรง" + +#: scene/3d/body_shape.cpp +#, fuzzy +msgid "" +"A shape must be provided for CollisionShape to function. Please create a " +"shape resource for it!" +msgstr "ต้องมีรูปทรงเพื่อให้ CollisionShape ทำงานได้ กรุณาสร้างรูปทรง" + +#: scene/3d/collision_polygon.cpp +#, fuzzy +msgid "" +"CollisionPolygon only serves to provide a collision shape to a " +"CollisionObject derived node. Please only use it as a child of Area, " +"StaticBody, RigidBody, KinematicBody, etc. to give them a shape." +msgstr "" +"CollisionPolygon ใช้ประโยชน์เป็นรูปทรงสำหรับโหนดกลุ่ม CollisionObject " +"จึงควรใช้เป็นโหนดลูกของ Area, StaticBody, RigidBody, KinematicBody ฯลฯ " +"เพื่อให้มีรูปทรง" + +#: scene/3d/collision_polygon.cpp +#, fuzzy +msgid "An empty CollisionPolygon has no effect on collision." +msgstr "CollisionPolygon ที่ว่างเปล่าจะไม่มีผลทางกายภาพ" + +#: scene/3d/navigation_mesh.cpp +#, fuzzy +msgid "A NavigationMesh resource must be set or created for this node to work." +msgstr "ต้องมี NavigationMesh เพื่อให้โหนดนี้ทำงานได้" + +#: scene/3d/navigation_mesh.cpp +#, fuzzy +msgid "" +"NavigationMeshInstance must be a child or grandchild to a Navigation node. " +"It only provides navigation data." +msgstr "" +"NavigationMeshInstance ต้องเป็นโหนดลูก/หลานของโหนด Navigation " +"โหนดนี้ใช้เพื่อเป็นข้อมูลในการนำทางเท่านั้น" + +#: scene/3d/remote_transform.cpp +#, fuzzy +msgid "Path property must point to a valid Spatial node to work." +msgstr "ต้องแก้ไข Path ให้ชี้ไปยังโหนด Spatial จึงจะทำงานได้" + +#: scene/3d/scenario_fx.cpp +#, fuzzy +msgid "" +"Only one WorldEnvironment is allowed per scene (or set of instanced scenes)." +msgstr "จะมี WorldEnvironment ได้เพียงโหนดเดียวในฉาก (หรือกลุ่มของฉากที่เป็นอินสแตนซ์)" + +#: scene/3d/sprite_3d.cpp +#, fuzzy +msgid "" +"A SpriteFrames resource must be created or set in the 'Frames' property in " +"order for AnimatedSprite3D to display frames." +msgstr "ต้องมี SpriteFrames ใน 'Frames' เพื่อให้ AnimatedSprite3D แสดงผลได้" + +#: scene/gui/dialogs.cpp +#, fuzzy +msgid "Alert!" +msgstr "ประกาศ!" + +#: scene/gui/dialogs.cpp +#, fuzzy +msgid "Please Confirm..." +msgstr "กรุณายืนยัน..." + +#: scene/gui/file_dialog.cpp +msgid "Open a File" +msgstr "เปิดไฟล์" + +#: scene/gui/file_dialog.cpp +msgid "Open File(s)" +msgstr "เปิดไฟล์" + +#: scene/gui/file_dialog.cpp +#, fuzzy +msgid "Open a Directory" +msgstr "เปิดโฟลเดอร์" + +#: scene/gui/file_dialog.cpp +#, fuzzy +msgid "Open a File or Directory" +msgstr "เปิดไฟล์หรือโฟลเดอร์" + +#: scene/gui/input_action.cpp +#, fuzzy +msgid "Ctrl+" +msgstr "Ctrl+" + +#: scene/gui/popup.cpp +#, fuzzy +msgid "" +"Popups will hide by default unless you call popup() or any of the popup*() " +"functions. Making them visible for editing is fine though, but they will " +"hide upon running." +msgstr "" +"ปกติป๊อปอัพจะถูกซ่อนจนกว่าจะมีการเรียกใช้ฟังก์ชัน popup() หรือ popup*() " +"โดยขณะแก้ไขสามารถเปิดให้มองเห็นได้ แต่เมื่อเริ่มโปรแกรมป๊อปอัพจะถูกซ่อน" + +#: scene/gui/scroll_container.cpp +msgid "" +"ScrollContainer is intended to work with a single child control.\n" +"Use a container as child (VBox,HBox,etc), or a Control and set the custom " +"minimum size manually." +msgstr "" + +#: scene/main/viewport.cpp +#, fuzzy +msgid "" +"This viewport is not set as render target. If you intend for it to display " +"its contents directly to the screen, make it a child of a Control so it can " +"obtain a size. Otherwise, make it a RenderTarget and assign its internal " +"texture to some node for display." +msgstr "" +"Viewport นี้ไม่ได้เป็น render target ถ้าท่านต้องการแสดงผลบนหน้าจอโดยตรง " +"ให้แก้ไขโหนดนี้ให้เป็นโหนดลูกของ Control แต่ถ้าไม่ ให้ปรับเป็น render target และนำไปใช้เป็น " +"texture ของโหนดอื่น" + +#~ msgid "Surface" +#~ msgstr "พื้นผิว" + +#, fuzzy +#~ msgid "" +#~ "A SampleLibrary resource must be created or set in the 'samples' property " +#~ "in order for SamplePlayer to play sound." +#~ msgstr "ต้องมี SampleLibrary ใน 'samples' เพื่อให้ SamplePlayer เล่นเสียงได้" + +#, fuzzy +#~ msgid "" +#~ "A SampleLibrary resource must be created or set in the 'samples' property " +#~ "in order for SpatialSamplePlayer to play sound." +#~ msgstr "ต้องมี SampleLibrary ใน 'samples' เพื่อให้ SpatialSamplePlayer เล่นเสียงได้" + +#, fuzzy +#~ msgid "Replaced %d Ocurrence(s)." +#~ msgstr "แทนที่แล้ว %d ครั้ง" + +#~ msgid "Please save the scene first." +#~ msgstr "กรุณาบันทึกฉากก่อน" + +#, fuzzy +#~ msgid "Save Translatable Strings" +#~ msgstr "บันทึกสตริงหลายภาษา" + +#~ msgid "Translatable Strings.." +#~ msgstr "สตริงหลายภาษา.." + +#~ msgid "Install Export Templates" +#~ msgstr "ติดตั้งแม่แบบส่งออก" + +#~ msgid "Edit Script Options" +#~ msgstr "แก้ไขตัวเลือกสคริปต์" + +#~ msgid "Please export outside the project folder!" +#~ msgstr "กรุณาส่งออกไปนอกโฟลเดอร์โปรเจกต์!" + +#~ msgid "Error exporting project!" +#~ msgstr "ผิดพลาดขณะส่งออกโปรเจกต์!" + +#~ msgid "Error writing the project PCK!" +#~ msgstr "ผิดพลาดขณะเขียนไฟล์ PCK!" + +#~ msgid "No exporter for platform '%s' yet." +#~ msgstr "ยังไม่มีตัวส่งออกสำหรับแพลตฟอร์ม '%s'" + +#~ msgid "Create Android keystore" +#~ msgstr "สร้าง Android keystore" + +#~ msgid "Full name" +#~ msgstr "ชื่อเต็ม" + +#~ msgid "Organization" +#~ msgstr "องค์กร" + +#~ msgid "City" +#~ msgstr "เมือง" + +#~ msgid "State" +#~ msgstr "รัฐ" + +#~ msgid "2 letter country code" +#~ msgstr "รหัสประเทศ 2 ตัวอักษร" + +#~ msgid "Password" +#~ msgstr "รหัสผ่าน" + +#~ msgid "at least 6 characters" +#~ msgstr "อย่างน้อย 6 ตัวอักษร" + +#~ msgid "File name" +#~ msgstr "ชื่อไฟล์" + +#~ msgid "Path : (better to save outside of project)" +#~ msgstr "ตำแหน่งไฟล์ : (ควรบันทึกนอกโปรเจกต์)" + +#~ msgid "" +#~ "Release keystore is not set.\n" +#~ "Do you want to create one?" +#~ msgstr "" +#~ "ยังไม่มี keystore สำหรับส่งออก\n" +#~ "สร้างใหม่?" + +#~ msgid "Fill Keystore/Release User and Release Password" +#~ msgstr "ใส่ Keystore/ชื่อผู้ใช้และรหัสผ่านสำหรับส่งออก" + +#~ msgid "Group name can't be empty!" +#~ msgstr "ชื่อกลุ่มเว้นว่างไม่ได้!" + +#~ msgid "Invalid character in group name!" +#~ msgstr "ใช้อักษรบางตัวในชื่อกลุ่มไม่ได้!" + +#~ msgid "Group name already exists!" +#~ msgstr "มีชื่อกลุ่มนี้อยู่แล้ว!" + +#~ msgid "Atlas Preview" +#~ msgstr "ตัวอย่าง Atlas" + +#~ msgid "Project Export Settings" +#~ msgstr "ตั้งค่าส่งออกโปรเจกต์" + +#~ msgid "Export to Platform" +#~ msgstr "ส่งออกไปยังแพลตฟอร์ม" + +#~ msgid "Convert text scenes to binary on export." +#~ msgstr "แปลงไฟล์ฉากแบบตัวอักษรให้เป็นไบนารีสำหรับส่งออก" + +#~ msgid "Images" +#~ msgstr "รูป" + +#~ msgid "Keep Original" +#~ msgstr "เก็บต้นฉบับ" + +#~ msgid "Compress for Disk (Lossy, WebP)" +#~ msgstr "บีบอัดสำหรับดิสก์ (Lossy, WebP)" + +#~ msgid "Compress for RAM (BC/PVRTC/ETC)" +#~ msgstr "บีบอัดสำหรับแรม (BC/PVRTC/ETC)" + +#~ msgid "Convert Images (*.png):" +#~ msgstr "แปลงรูป (*.png):" + +#~ msgid "Compress for Disk (Lossy) Quality:" +#~ msgstr "บีบอัดสำหรับดิสก์ (Lossy) คุณภาพ:" + +#~ msgid "Shrink All Images:" +#~ msgstr "ลดขนาดทุกรูป:" + +#~ msgid "Compress Formats:" +#~ msgstr "การบีบอัด:" + +#~ msgid "Compress Disk" +#~ msgstr "บีบอัดดิสก์" + +#~ msgid "Compress RAM" +#~ msgstr "บีบอัดแรม" + +#~ msgid "Compress Mode:" +#~ msgstr "โหมดบีบอัด:" + +#~ msgid "Lossy Quality:" +#~ msgstr "เสียคุณภาพ:" + +#~ msgid "Shrink By:" +#~ msgstr "ลดไป:" + +#~ msgid "Preview Atlas" +#~ msgstr "ตัวอย่าง Atlas" + +#~ msgid "Select None" +#~ msgstr "ไม่เลือก" + +#~ msgid "Samples" +#~ msgstr "ไฟล์เสียง" + +#~ msgid "Sample Conversion Mode: (.wav files):" +#~ msgstr "การแปลงไฟล์เสียง: (ไฟล์ .wav):" + +#~ msgid "Keep" +#~ msgstr "เก็บ" + +#~ msgid "Compress (RAM - IMA-ADPCM)" +#~ msgstr "บีบอัด (RAM - IMA-ADPCM)" + +#~ msgid "Sampling Rate Limit (Hz):" +#~ msgstr "จำกัดความถี่ (Hz):" + +#~ msgid "Trim" +#~ msgstr "ตัดปลาย" + +#~ msgid "Trailing Silence:" +#~ msgstr "ส่วนที่เงียบตรงปลาย:" + +#~ msgid "Script" +#~ msgstr "สคริปต์" + +#~ msgid "Script Export Mode:" +#~ msgstr "โหมดส่งออกสคริปต์:" + +#~ msgid "Text" +#~ msgstr "ตัวอักษร" + +#~ msgid "Compiled" +#~ msgstr "คอมไพล์แล้ว" + +#~ msgid "Encrypted (Provide Key Below)" +#~ msgstr "เข้ารหัส (ใส่คีย์ด้านล่าง)" + +#~ msgid "Script Encryption Key (256-bits as hex):" +#~ msgstr "คีย์เข้ารหัสสคริปต์ (256 บิต ฐาน 16):" + +#~ msgid "Export PCK/Zip" +#~ msgstr "ส่งออก PCK/Zip" + +#~ msgid "Export Project PCK" +#~ msgstr "ส่งออก PCK โปรเจกต์" + +#~ msgid "Export.." +#~ msgstr "ส่งออก.." + +#~ msgid "Project Export" +#~ msgstr "ส่งออกโปรเจกต์" diff --git a/editor/translations/tr.po b/editor/translations/tr.po index d1b82ede28..9228cf5818 100644 --- a/editor/translations/tr.po +++ b/editor/translations/tr.po @@ -2,7 +2,7 @@ # Copyright (C) 2016-2017 Juan Linietsky, Ariel Manzur and the Godot community # This file is distributed under the same license as the Godot source code. # -# Aprın Çor Tigin <kabusturk38@gmail.com>, 2016. +# Aprın Çor Tigin <kabusturk38@gmail.com>, 2016-2017. # Ceyhun Can Ulker <ceyhuncanu@gmail.com>, 2016. # Enes Kaya Öcal <ekayaocal@hotmail.com>, 2016. # M. Yavuz Uzun <myavuzuzun@yandex.com>, 2016. @@ -11,8 +11,8 @@ msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" -"PO-Revision-Date: 2017-01-02 19:10+0000\n" -"Last-Translator: Orkun Turan <holygatestudio@yandex.com>\n" +"PO-Revision-Date: 2017-01-22 12:30+0000\n" +"Last-Translator: Aprın Çor Tigin <kabusturk38@gmail.com>\n" "Language-Team: Turkish <https://hosted.weblate.org/projects/godot-engine/" "godot/tr/>\n" "Language: tr\n" @@ -927,7 +927,7 @@ msgstr "Dizeci Depoluyor:" msgid "Packing" msgstr "Çıkınla" -#: editor/editor_export.cpp +#: editor/editor_export.cpp platform/javascript/export/export.cpp msgid "Template file not found:\n" msgstr "" @@ -1103,9 +1103,8 @@ msgid "Constants:" msgstr "Sabitler:" #: editor/editor_help.cpp -#, fuzzy msgid "Property Description:" -msgstr "Kısa Açıklama:" +msgstr "Özellik Açıklaması:" #: editor/editor_help.cpp msgid "Method Description:" @@ -2753,8 +2752,9 @@ msgid "Compress" msgstr "Sıkıştır" #: editor/io_plugins/editor_translation_import_plugin.cpp +#, fuzzy msgid "Add to Project (godot.cfg)" -msgstr "Tasarıya Ekle (godot.cfg)" +msgstr "Tasarıya Ekle (engine.cfg)" #: editor/io_plugins/editor_translation_import_plugin.cpp msgid "Import Languages:" @@ -3470,10 +3470,12 @@ msgid "Set Handle" msgstr "Tutamacı Ayarla" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp msgid "Add/Remove Color Ramp Point" msgstr "Renk Yokuşu Noktası Ekle / Kaldır" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp #: editor/plugins/shader_graph_editor_plugin.cpp msgid "Modify Color Ramp" msgstr "Renk Yokuşunu Değiştir" @@ -3508,6 +3510,11 @@ msgstr "Sahneden İçe Aktar" msgid "Update from Scene" msgstr "Sahneden Güncelle" +#: editor/plugins/curve_editor_plugin.cpp +#, fuzzy +msgid "Modify Curve" +msgstr "Eğri Haritasını Değiştir" + #: editor/plugins/item_list_editor_plugin.cpp msgid "Item %d" msgstr "Öğe%d" @@ -3813,6 +3820,10 @@ msgid "Node does not contain geometry (faces)." msgstr "Düğüm uzambilgisi (yüzler) içermiyor." #: editor/plugins/particles_editor_plugin.cpp +msgid "A processor material of type 'ParticlesMaterial' is required." +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp msgid "Faces contain no area!" msgstr "Yüzler alan içermez!" @@ -3825,11 +3836,13 @@ msgid "Generate AABB" msgstr "AABB Üret" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Mesh" +#, fuzzy +msgid "Create Emission Points From Mesh" msgstr "Örüntüden Yayıcı Oluştur" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Node" +#, fuzzy +msgid "Create Emission Points From Node" msgstr "Düğümden Yayıcı Oluştur" #: editor/plugins/particles_editor_plugin.cpp @@ -3841,21 +3854,28 @@ msgid "Create Emitter" msgstr "Yayıcı Oluştur" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Positions:" +#, fuzzy +msgid "Emission Points:" msgstr "Yayma Konumları:" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Fill:" -msgstr "Yayma Dolumu:" +#, fuzzy +msgid "Surface Points" +msgstr "Yüzey %d" #: editor/plugins/particles_editor_plugin.cpp -msgid "Surface" -msgstr "Yüzey" +msgid "Surface Points+Normal (Directed)" +msgstr "" #: editor/plugins/particles_editor_plugin.cpp msgid "Volume" msgstr "Oylum" +#: editor/plugins/particles_editor_plugin.cpp +#, fuzzy +msgid "Emission Source: " +msgstr "Yayma Dolumu:" + #: editor/plugins/path_2d_editor_plugin.cpp msgid "Remove Point from Curve" msgstr "Noktayı Eğriden Kaldır" @@ -5183,12 +5203,14 @@ msgid "Invalid project path, the path must exist!" msgstr "Geçersiz tasarı yolu, yolun var olması gerekir!" #: editor/project_manager.cpp +#, fuzzy msgid "Invalid project path, godot.cfg must not exist." -msgstr "Geçersiz tasarı yolu, godot.cfg var olmaması gerekir." +msgstr "Geçersiz tasarı yolu, engine.cfg var olmaması gerekir." #: editor/project_manager.cpp +#, fuzzy msgid "Invalid project path, godot.cfg must exist." -msgstr "Geçersiz tasarı yolu, godot.cfg var olması gerekir." +msgstr "Geçersiz tasarı yolu, engine.cfg var olması gerekir." #: editor/project_manager.cpp msgid "Imported Project" @@ -5199,8 +5221,9 @@ msgid "Invalid project path (changed anything?)." msgstr "Geçersiz tasarı yolu (bir şey değişti mi?)." #: editor/project_manager.cpp +#, fuzzy msgid "Couldn't create godot.cfg in project path." -msgstr "godot.cfg tasarı yolunda oluşturulamadı." +msgstr "engine.cfg tasarı yolunda oluşturulamadı." #: editor/project_manager.cpp msgid "The following files failed extraction from package:" @@ -5485,8 +5508,9 @@ msgid "Remove Resource Remap Option" msgstr "Kaynak Yeniden Eşle Seçeneğini Kaldır" #: editor/project_settings.cpp +#, fuzzy msgid "Project Settings (godot.cfg)" -msgstr "Tasarı Ayarları (godot.cfg)" +msgstr "Tasarı Ayarları (engine.cfg)" #: editor/project_settings.cpp editor/settings_config_dialog.cpp msgid "General" @@ -6164,9 +6188,8 @@ msgid "Change Notifier Extents" msgstr "Bildirim Kapsamını Değiştir" #: editor/spatial_editor_gizmos.cpp -#, fuzzy msgid "Change Probe Extents" -msgstr "Bildirim Kapsamını Değiştir" +msgstr "Deşme Genişlemesini Değiştir" #: modules/gdscript/gd_functions.cpp #: modules/visual_script/visual_script_builtin_funcs.cpp @@ -6495,7 +6518,32 @@ msgstr "yeni basıldı" msgid "just released" msgstr "yeni bırakıldı" +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Run in Browser" +msgstr "Gözat" + +#: platform/javascript/export/export.cpp +msgid "Run exported HTML in the system's default browser." +msgstr "" + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not write file:\n" +msgstr "Karo Bulunamadı:" + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not read file:\n" +msgstr "Karo Bulunamadı:" + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not open template for export:\n" +msgstr "Dizin oluşturulamadı." + #: platform/uwp/export/export.cpp +#, fuzzy msgid "" "Couldn't read the certificate file. Are the path and password both correct?" msgstr "" @@ -6825,6 +6873,9 @@ msgstr "" "bir boyut elde edin. Ya da, onu bir RenderTarget yapın ve iç dokusunu " "görüntülemesi için bir düğüme atayın." +#~ msgid "Surface" +#~ msgstr "Yüzey" + #~ msgid "" #~ "A SampleLibrary resource must be created or set in the 'samples' property " #~ "in order for SamplePlayer to play sound." @@ -6869,33 +6920,51 @@ msgstr "" #~ msgid "No exporter for platform '%s' yet." #~ msgstr "Şu anda '%s' ortamı için dışa aktarıcı yok." -#, fuzzy #~ msgid "Create Android keystore" -#~ msgstr "Yeni Kaynak Oluştur" +#~ msgstr "Android Dokunaç Yığımı Oluştur" -#, fuzzy #~ msgid "Full name" -#~ msgstr "Uygun ad" +#~ msgstr "Tam adı" + +#~ msgid "Organizational unit" +#~ msgstr "Kuruluşsal birim" -#, fuzzy #~ msgid "Organization" -#~ msgstr "Geçiş" +#~ msgstr "Kuruluş" + +#~ msgid "City" +#~ msgstr "Şehir" -#, fuzzy #~ msgid "State" -#~ msgstr "Durum:" +#~ msgstr "Ülke" + +#~ msgid "2 letter country code" +#~ msgstr "2 damgalı ülke imi" + +#~ msgid "User alias" +#~ msgstr "Kullanıcı takma adı" -#, fuzzy #~ msgid "Password" -#~ msgstr "Gizyazı:" +#~ msgstr "Gizyazı" -#, fuzzy #~ msgid "at least 6 characters" -#~ msgstr "Geçerli damgalar:" +#~ msgstr "en az 6 geçerli damga" -#, fuzzy #~ msgid "File name" -#~ msgstr "Yeni ad:" +#~ msgstr "Dizeç adı" + +#~ msgid "Path : (better to save outside of project)" +#~ msgstr "Yol: (tasarının dışında kaydetmek daha iyi)" + +#~ msgid "" +#~ "Release keystore is not set.\n" +#~ "Do you want to create one?" +#~ msgstr "" +#~ "Serbest bırakma dokunaç yığımı ayarlanmadı.Bir tane oluşturmak mı ister " +#~ "misin?" + +#~ msgid "Fill Keystore/Release User and Release Password" +#~ msgstr "Dokunaç Yığımını Doldur/Kullanıcıyı Bırak ve Gizyazıyı Bırak" #~ msgid "Include" #~ msgstr "Katıştır" diff --git a/editor/translations/ur_PK.po b/editor/translations/ur_PK.po index 381f3d3fdd..c8fb79d1c0 100644 --- a/editor/translations/ur_PK.po +++ b/editor/translations/ur_PK.po @@ -912,7 +912,7 @@ msgstr "" msgid "Packing" msgstr "" -#: editor/editor_export.cpp +#: editor/editor_export.cpp platform/javascript/export/export.cpp msgid "Template file not found:\n" msgstr "" @@ -3390,10 +3390,12 @@ msgid "Set Handle" msgstr "" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp msgid "Add/Remove Color Ramp Point" msgstr "" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp #: editor/plugins/shader_graph_editor_plugin.cpp msgid "Modify Color Ramp" msgstr "" @@ -3428,6 +3430,10 @@ msgstr "" msgid "Update from Scene" msgstr "" +#: editor/plugins/curve_editor_plugin.cpp +msgid "Modify Curve" +msgstr "" + #: editor/plugins/item_list_editor_plugin.cpp msgid "Item %d" msgstr "" @@ -3729,6 +3735,10 @@ msgid "Node does not contain geometry (faces)." msgstr "" #: editor/plugins/particles_editor_plugin.cpp +msgid "A processor material of type 'ParticlesMaterial' is required." +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp msgid "Faces contain no area!" msgstr "" @@ -3741,11 +3751,11 @@ msgid "Generate AABB" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Mesh" +msgid "Create Emission Points From Mesh" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Node" +msgid "Create Emission Points From Node" msgstr "" #: editor/plugins/particles_editor_plugin.cpp @@ -3757,21 +3767,25 @@ msgid "Create Emitter" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Positions:" +msgid "Emission Points:" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Fill:" +msgid "Surface Points" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Surface" +msgid "Surface Points+Normal (Directed)" msgstr "" #: editor/plugins/particles_editor_plugin.cpp msgid "Volume" msgstr "" +#: editor/plugins/particles_editor_plugin.cpp +msgid "Emission Source: " +msgstr "" + #: editor/plugins/path_2d_editor_plugin.cpp msgid "Remove Point from Curve" msgstr "" @@ -6375,6 +6389,26 @@ msgstr "" msgid "just released" msgstr "" +#: platform/javascript/export/export.cpp +msgid "Run in Browser" +msgstr "" + +#: platform/javascript/export/export.cpp +msgid "Run exported HTML in the system's default browser." +msgstr "" + +#: platform/javascript/export/export.cpp +msgid "Could not write file:\n" +msgstr "" + +#: platform/javascript/export/export.cpp +msgid "Could not read file:\n" +msgstr "" + +#: platform/javascript/export/export.cpp +msgid "Could not open template for export:\n" +msgstr "" + #: platform/uwp/export/export.cpp msgid "" "Couldn't read the certificate file. Are the path and password both correct?" diff --git a/editor/translations/zh_CN.po b/editor/translations/zh_CN.po index 8d0b9d44d9..d2380c0a48 100644 --- a/editor/translations/zh_CN.po +++ b/editor/translations/zh_CN.po @@ -10,13 +10,14 @@ # Luo Jun <vipsbpig@gmail.com>, 2016. # oberon-tonya <360119124@qq.com>, 2016. # wanfang liu <wanfang.liu@gmail.com>, 2016. +# Youmu <konpaku.w@gmail.com>, 2017. # msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2017-01-04 14:55+0000\n" -"Last-Translator: Geequlim <geequlim@gmail.com>\n" +"PO-Revision-Date: 2017-03-07 06:32+0000\n" +"Last-Translator: Youmu <konpaku.w@gmail.com>\n" "Language-Team: Chinese (China) <https://hosted.weblate.org/projects/godot-" "engine/godot/zh_CN/>\n" "Language: zh_CN\n" @@ -24,7 +25,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: Weblate 2.11-dev\n" +"X-Generator: Weblate 2.12\n" #: editor/animation_editor.cpp msgid "Disabled" @@ -193,7 +194,7 @@ msgstr "清理动画" #: editor/animation_editor.cpp msgid "Create NEW track for %s and insert key?" -msgstr "为%s创建新轨道并插入关键帧?" +msgstr "为'%s'创建新轨道并插入关键帧?" #: editor/animation_editor.cpp msgid "Create %d NEW tracks and insert keys?" @@ -247,7 +248,7 @@ msgstr "添加回调轨道" #: editor/animation_editor.cpp msgid "Animation zoom." -msgstr "动画时间缩放" +msgstr "动画时间缩放。" #: editor/animation_editor.cpp msgid "Length (s):" @@ -255,35 +256,35 @@ msgstr "时长(秒):" #: editor/animation_editor.cpp msgid "Animation length (in seconds)." -msgstr "动画时长(秒)" +msgstr "动画时长(秒)。" #: editor/animation_editor.cpp msgid "Step (s):" -msgstr "步长(秒)" +msgstr "步长(秒):" #: editor/animation_editor.cpp msgid "Cursor step snap (in seconds)." -msgstr "步进吸附(秒)" +msgstr "步进吸附(秒)。" #: editor/animation_editor.cpp msgid "Enable/Disable looping in animation." -msgstr "启用/禁用循环" +msgstr "启用/禁用循环。" #: editor/animation_editor.cpp msgid "Add new tracks." -msgstr "新建轨道" +msgstr "新建轨道。" #: editor/animation_editor.cpp msgid "Move current track up." -msgstr "上移当前轨道" +msgstr "上移当前轨道。" #: editor/animation_editor.cpp msgid "Move current track down." -msgstr "下移当前轨道" +msgstr "下移当前轨道。" #: editor/animation_editor.cpp msgid "Remove selected track." -msgstr "移除选中轨道" +msgstr "移除选中轨道。" #: editor/animation_editor.cpp msgid "Track tools" @@ -327,7 +328,7 @@ msgstr "过渡" #: editor/animation_editor.cpp msgid "Scale Ratio:" -msgstr "缩放比率" +msgstr "缩放比率:" #: editor/animation_editor.cpp msgid "Call Functions in Which Node?" @@ -347,7 +348,7 @@ msgstr "清除所有动画" #: editor/animation_editor.cpp msgid "Clean-Up Animation(s) (NO UNDO!)" -msgstr "清除所有动画吗(无法撤销)?" +msgstr "清除所有动画吗(无法撤销!)" #: editor/animation_editor.cpp msgid "Clean-Up" @@ -414,7 +415,7 @@ msgstr "ZIP资源包" #: editor/call_dialog.cpp msgid "Method List For '%s':" -msgstr "%s的方法列表" +msgstr "'%s'的方法列表:" #: editor/call_dialog.cpp modules/visual_script/visual_script_editor.cpp msgid "Call" @@ -550,7 +551,7 @@ msgstr "必须设置方法的对象节点!" msgid "" "Target method not found! Specify a valid method or attach a script to target " "Node." -msgstr "" +msgstr "找不到目标方法! 指定一个有效的方法或把脚本附加到目标节点。" #: editor/connections_dialog.cpp msgid "Connect To Node:" @@ -610,7 +611,7 @@ msgstr "创建订阅" #: editor/connections_dialog.cpp msgid "Connect.." -msgstr "连接事件" +msgstr "连接事件。" #: editor/connections_dialog.cpp #: editor/plugins/animation_tree_editor_plugin.cpp @@ -657,13 +658,13 @@ msgstr "依赖项:" msgid "" "Scene '%s' is currently being edited.\n" "Changes will not take effect unless reloaded." -msgstr "场景%s已被修改,重新加载后生效。" +msgstr "场景'%s'已被修改,重新加载后生效。" #: editor/dependency_editor.cpp msgid "" "Resource '%s' is in use.\n" "Changes will take effect when reloaded." -msgstr "资源%s正在使用中,修改将在重新加载后生效。" +msgstr "资源'%s'正在使用中,修改将在重新加载后生效。" #: editor/dependency_editor.cpp msgid "Dependencies" @@ -703,11 +704,11 @@ msgid "" "The files being removed are required by other resources in order for them to " "work.\n" "Remove them anyway? (no undo)" -msgstr "要删除的文件被其他资源所依赖,仍然要删除吗(无法撤销)?" +msgstr "要删除的文件被其他资源所依赖,仍然要删除吗?(无法撤销)" #: editor/dependency_editor.cpp msgid "Remove selected files from the project? (no undo)" -msgstr "确定从项目中删除文件(此操作无法撤销)?" +msgstr "确定从项目中删除文件?(此操作无法撤销)" #: editor/dependency_editor.cpp msgid "Error loading:" @@ -735,7 +736,7 @@ msgstr "加载出错!" #: editor/dependency_editor.cpp msgid "Permanently delete %d item(s)? (No undo!)" -msgstr "永久删除选中的%d条项目吗(此操作无法撤销!)?" +msgstr "永久删除选中的%d条项目吗?(此操作无法撤销!)" #: editor/dependency_editor.cpp msgid "Owns" @@ -774,7 +775,7 @@ msgstr "" #: editor/editor_audio_buses.cpp #, fuzzy msgid "Add Bus" -msgstr "添加 %s" +msgstr "添加(Add) %s" #: editor/editor_audio_buses.cpp editor/property_editor.cpp #: editor/script_create_dialog.cpp @@ -792,7 +793,7 @@ msgstr "默认" #: editor/editor_autoload_settings.cpp msgid "Invalid name." -msgstr "名称非法:" +msgstr "名称非法:。" #: editor/editor_autoload_settings.cpp msgid "Valid characters:" @@ -812,15 +813,15 @@ msgstr "名称非法,与已存在的全局常量名称冲突。" #: editor/editor_autoload_settings.cpp msgid "Invalid Path." -msgstr "路径非法!" +msgstr "路径非法。" #: editor/editor_autoload_settings.cpp msgid "File does not exist." -msgstr "文件不存在" +msgstr "文件不存在。" #: editor/editor_autoload_settings.cpp msgid "Not in resource path." -msgstr "不在资源路径下" +msgstr "不在资源路径下。" #: editor/editor_autoload_settings.cpp msgid "Add AutoLoad" @@ -828,7 +829,7 @@ msgstr "添加Autoload" #: editor/editor_autoload_settings.cpp msgid "Autoload '%s' already exists!" -msgstr "Autoload %s已存在!" +msgstr "Autoload '%s'已存在!" #: editor/editor_autoload_settings.cpp msgid "Rename Autoload" @@ -872,7 +873,7 @@ msgstr "名称" #: editor/editor_autoload_settings.cpp msgid "Singleton" -msgstr "Singleton" +msgstr "单独(Singleton)" #: editor/editor_autoload_settings.cpp msgid "List:" @@ -922,7 +923,7 @@ msgstr "文件排序:" msgid "Packing" msgstr "打包中" -#: editor/editor_export.cpp +#: editor/editor_export.cpp platform/javascript/export/export.cpp msgid "Template file not found:\n" msgstr "" @@ -1024,7 +1025,7 @@ msgstr "目录|文件:" #: editor/editor_file_dialog.cpp msgid "Preview:" -msgstr "预览" +msgstr "预览:" #: editor/editor_file_dialog.cpp editor/script_editor_debugger.cpp #: scene/gui/file_dialog.cpp @@ -1054,7 +1055,7 @@ msgstr "搜索帮助" #: editor/editor_help.cpp msgid "Class List:" -msgstr "类型列表" +msgstr "类型列表:" #: editor/editor_help.cpp msgid "Search Classes" @@ -1098,9 +1099,8 @@ msgid "Constants:" msgstr "常量:" #: editor/editor_help.cpp -#, fuzzy msgid "Property Description:" -msgstr "简介:" +msgstr "属性描述:" #: editor/editor_help.cpp msgid "Method Description:" @@ -1112,7 +1112,7 @@ msgstr "搜索文本" #: editor/editor_log.cpp msgid " Output:" -msgstr " 输出" +msgstr " 输出:" #: editor/editor_log.cpp editor/plugins/animation_tree_editor_plugin.cpp #: editor/plugins/rich_text_editor_plugin.cpp editor/property_editor.cpp @@ -1175,7 +1175,7 @@ msgstr "加载资源失败。" #: editor/editor_node.cpp msgid "Can't load MeshLibrary for merging!" -msgstr "无法加载要合并的MeshLibrary" +msgstr "无法加载要合并的MeshLibrary!" #: editor/editor_node.cpp msgid "Error saving MeshLibrary!" @@ -1252,8 +1252,8 @@ msgid "" "You can change it later in \"Project Settings\" under the 'application' " "category." msgstr "" -"尚未定义主场景。\n" -"请在项目设置的application分类下设置选择主场景。" +"所选场景'%s'不存在,选择一个有效的场景?\n" +"请在项目设置的application(应用程序)分类下设置选择主场景。" #: editor/editor_node.cpp msgid "" @@ -1262,7 +1262,7 @@ msgid "" "category." msgstr "" "选中的%s场景并非一个场景文件,请选择合法的场景。\n" -"请在项目设置的application分类下设置选择主场景。" +"请在项目设置的application(应用程序)分类下设置选择主场景。" #: editor/editor_node.cpp msgid "Current scene was never saved, please save it prior to running." @@ -1294,11 +1294,11 @@ msgstr "是" #: editor/editor_node.cpp msgid "Close scene? (Unsaved changes will be lost)" -msgstr "确定要关闭场景吗,未保存的修改将丢失?" +msgstr "确定要关闭场景吗?(未保存的修改将丢失)" #: editor/editor_node.cpp msgid "Save Scene As.." -msgstr "场景另存为" +msgstr "场景另存为.." #: editor/editor_node.cpp msgid "This scene has never been saved. Save before running?" @@ -1338,13 +1338,15 @@ msgstr "此操作无法撤销,确定要继续吗?" #: editor/editor_node.cpp msgid "Quick Run Scene.." -msgstr "快速运行场景" +msgstr "快速运行场景.." #: editor/editor_node.cpp msgid "" "Open Project Manager? \n" "(Unsaved changes will be lost)" -msgstr "退出到项目管理窗口(未保存的修改将丢失)?" +msgstr "" +"退出到项目管理窗口?\n" +"(未保存的修改将丢失)" #: editor/editor_node.cpp msgid "Pick a Main Scene" @@ -1374,7 +1376,7 @@ msgstr "加载场景出错。" #: editor/editor_node.cpp msgid "Scene '%s' has broken dependencies:" -msgstr "场景%s的依赖已被破坏:" +msgstr "场景'%s'的依赖已被破坏:" #: editor/editor_node.cpp msgid "Save Layout" @@ -1410,7 +1412,7 @@ msgstr "下一项" #: editor/editor_node.cpp msgid "Previous tab" -msgstr "上一个目录:" +msgstr "上一个目录" #: editor/editor_node.cpp #, fuzzy @@ -1431,7 +1433,7 @@ msgstr "从现有场景中创建.." #: editor/editor_node.cpp msgid "Open Scene.." -msgstr "打开场景" +msgstr "打开场景.." #: editor/editor_node.cpp msgid "Save Scene" @@ -1459,7 +1461,7 @@ msgstr "转换为.." #: editor/editor_node.cpp msgid "MeshLibrary.." -msgstr "MeshLibrary.." +msgstr "MeshLibrary(网格库).." #: editor/editor_node.cpp msgid "TileSet.." @@ -1498,7 +1500,7 @@ msgstr "无干扰模式" #: editor/editor_node.cpp msgid "Import assets to the project." -msgstr "导入资源" +msgstr "导入资源。" #: editor/editor_node.cpp editor/io_plugins/editor_bitmask_import_plugin.cpp #: editor/io_plugins/editor_font_import_plugin.cpp @@ -1513,7 +1515,7 @@ msgstr "导入" #: editor/editor_node.cpp msgid "Miscellaneous project or scene-wide tools." -msgstr "其他工程或全场景工具" +msgstr "其他工程或全场景工具。" #: editor/editor_node.cpp msgid "Tools" @@ -1529,7 +1531,7 @@ msgstr "导出" #: editor/editor_node.cpp msgid "Play the project." -msgstr "运行此项目(F5)" +msgstr "运行此项目(F5)。" #: editor/editor_node.cpp editor/plugins/sample_library_editor_plugin.cpp msgid "Play" @@ -1545,7 +1547,7 @@ msgstr "暂停运行场景" #: editor/editor_node.cpp msgid "Stop the scene." -msgstr "停止运行场景" +msgstr "停止运行场景。" #: editor/editor_node.cpp editor/plugins/sample_library_editor_plugin.cpp msgid "Stop" @@ -1553,7 +1555,7 @@ msgstr "停止" #: editor/editor_node.cpp msgid "Play the edited scene." -msgstr "打开并运行场景" +msgstr "打开并运行场景。" #: editor/editor_node.cpp msgid "Play Scene" @@ -1691,7 +1693,7 @@ msgstr "有更改时更新UI" #: editor/editor_node.cpp msgid "Disable Update Spinner" -msgstr "" +msgstr "禁用自动更新" #: editor/editor_node.cpp msgid "Inspector" @@ -1711,7 +1713,7 @@ msgstr "保存当前编辑的资源。" #: editor/editor_node.cpp editor/plugins/script_editor_plugin.cpp msgid "Save As.." -msgstr "另存为" +msgstr "另存为.." #: editor/editor_node.cpp msgid "Go to the previous edited object in history." @@ -1751,7 +1753,7 @@ msgstr "更新" #: editor/editor_node.cpp msgid "Thanks from the Godot community!" -msgstr "感谢Godot社区" +msgstr "感谢Godot社区!" #: editor/editor_node.cpp msgid "Thanks!" @@ -1775,7 +1777,7 @@ msgstr "与现有合并" #: editor/editor_node.cpp msgid "Password:" -msgstr "密码" +msgstr "密码:" #: editor/editor_node.cpp msgid "Open & Run a Script" @@ -1791,15 +1793,15 @@ msgstr "已安装插件:" #: editor/editor_plugin_settings.cpp msgid "Version:" -msgstr "版本" +msgstr "版本:" #: editor/editor_plugin_settings.cpp msgid "Author:" -msgstr "作者" +msgstr "作者:" #: editor/editor_plugin_settings.cpp msgid "Status:" -msgstr "状态" +msgstr "状态:" #: editor/editor_profiler.cpp msgid "Stop Profiling" @@ -1940,7 +1942,7 @@ msgstr "" #: editor/export_template_manager.cpp msgid "Can't open export templates zip." -msgstr "无法打开ZIP导出模板" +msgstr "无法打开ZIP导出模板。" #: editor/export_template_manager.cpp msgid "Invalid version.txt format inside templates." @@ -2026,7 +2028,7 @@ msgstr "无法将目录移动到自身下。" #: editor/filesystem_dock.cpp msgid "Can't operate on '..'" -msgstr "无法对'..'引用操作。" +msgstr "无法对'..'引用操作" #: editor/filesystem_dock.cpp msgid "Pick New Name and Location For:" @@ -2055,7 +2057,7 @@ msgstr "编辑依赖.." #: editor/filesystem_dock.cpp msgid "View Owners.." -msgstr "查看所有者" +msgstr "查看所有者.." #: editor/filesystem_dock.cpp msgid "Copy Path" @@ -2063,11 +2065,11 @@ msgstr "拷贝路径" #: editor/filesystem_dock.cpp msgid "Rename or Move.." -msgstr "移动或重命名" +msgstr "移动或重命名.." #: editor/filesystem_dock.cpp msgid "Move To.." -msgstr "移动" +msgstr "移动.." #: editor/filesystem_dock.cpp msgid "Info" @@ -2083,11 +2085,11 @@ msgstr "重新导入.." #: editor/filesystem_dock.cpp msgid "Previous Directory" -msgstr "上一个目录:" +msgstr "上一个目录" #: editor/filesystem_dock.cpp msgid "Next Directory" -msgstr "下一个目录:" +msgstr "下一个目录" #: editor/filesystem_dock.cpp msgid "Re-Scan Filesystem" @@ -2116,7 +2118,7 @@ msgstr "从分组中移除" #: editor/import/resource_importer_obj.cpp #: editor/io_plugins/editor_mesh_import_plugin.cpp msgid "Surface %d" -msgstr "" +msgstr "表面 %d" #: editor/import/resource_importer_scene.cpp #: editor/io_plugins/editor_scene_import_plugin.cpp @@ -2127,7 +2129,7 @@ msgstr "导入场景" #: editor/import/resource_importer_scene.cpp #: editor/io_plugins/editor_scene_import_plugin.cpp msgid "Importing Scene.." -msgstr "导入场景" +msgstr "导入场景.." #: editor/import/resource_importer_scene.cpp #: editor/io_plugins/editor_scene_import_plugin.cpp @@ -2147,7 +2149,7 @@ msgstr "后处理脚本被损坏或不合法(查看控制台):" #: editor/import/resource_importer_scene.cpp #: editor/io_plugins/editor_scene_import_plugin.cpp msgid "Error running post-import script:" -msgstr "后处理脚本运行发生错误" +msgstr "后处理脚本运行发生错误:" #: editor/import/resource_importer_scene.cpp #: editor/io_plugins/editor_scene_import_plugin.cpp @@ -2233,7 +2235,7 @@ msgstr "接受" #: editor/io_plugins/editor_bitmask_import_plugin.cpp msgid "Bit Mask" -msgstr "" +msgstr "位掩码(BitMask)" #: editor/io_plugins/editor_font_import_plugin.cpp msgid "No source font file!" @@ -2249,7 +2251,7 @@ msgid "" "Please use .fnt." msgstr "" "文件扩展名不合法\n" -"请使用.fnt文件" +"请使用.fnt文件。" #: editor/io_plugins/editor_font_import_plugin.cpp msgid "Can't load/process source font." @@ -2333,7 +2335,7 @@ msgstr "字体" #: editor/io_plugins/editor_mesh_import_plugin.cpp msgid "No meshes to import!" -msgstr "没有要导入的Mesh" +msgstr "没有要导入的Mesh!" #: editor/io_plugins/editor_mesh_import_plugin.cpp msgid "Single Mesh Import" @@ -2423,11 +2425,11 @@ msgstr "源路径为空。" #: editor/io_plugins/editor_scene_import_plugin.cpp msgid "Couldn't load post-import script." -msgstr "无法载入后导入脚本" +msgstr "无法载入后导入脚本。" #: editor/io_plugins/editor_scene_import_plugin.cpp msgid "Invalid/broken script for post-import." -msgstr "后导入脚本被损坏或不合法" +msgstr "后导入脚本被损坏或不合法。" #: editor/io_plugins/editor_scene_import_plugin.cpp msgid "Error importing scene." @@ -2571,7 +2573,7 @@ msgstr "导入2D大图" #: editor/io_plugins/editor_texture_import_plugin.cpp msgid "Source Texture" -msgstr "源贴图:" +msgstr "源贴图" #: editor/io_plugins/editor_texture_import_plugin.cpp msgid "Base Atlas Texture" @@ -2579,7 +2581,7 @@ msgstr "基础图集纹理" #: editor/io_plugins/editor_texture_import_plugin.cpp msgid "Source Texture(s)" -msgstr "源贴图:" +msgstr "源贴图(s)" #: editor/io_plugins/editor_texture_import_plugin.cpp msgid "Import Textures for 2D" @@ -2666,7 +2668,7 @@ msgstr "剪裁图片" #: editor/io_plugins/editor_texture_import_plugin.cpp msgid "Blitting Images" -msgstr "" +msgstr "Blitting 图片" #: editor/io_plugins/editor_texture_import_plugin.cpp msgid "Couldn't save atlas image:" @@ -2691,7 +2693,7 @@ msgstr "列" #: editor/io_plugins/editor_translation_import_plugin.cpp #: editor/script_create_dialog.cpp msgid "Language" -msgstr "语言:" +msgstr "语言" #: editor/io_plugins/editor_translation_import_plugin.cpp msgid "No items to import!" @@ -2726,8 +2728,9 @@ msgid "Compress" msgstr "压缩" #: editor/io_plugins/editor_translation_import_plugin.cpp +#, fuzzy msgid "Add to Project (godot.cfg)" -msgstr "添加到项目(godot.cfg)" +msgstr "添加到项目(engine.cfg)" #: editor/io_plugins/editor_translation_import_plugin.cpp msgid "Import Languages:" @@ -2743,7 +2746,7 @@ msgstr "多节点组" #: editor/node_dock.cpp msgid "Groups" -msgstr "分组:" +msgstr "分组" #: editor/node_dock.cpp msgid "Select a Node to edit Signals and Groups." @@ -2795,7 +2798,7 @@ msgstr "添加动画" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Blend Next Changed" -msgstr "" +msgstr "混合下一步变更" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Change Blend Time" @@ -2851,11 +2854,11 @@ msgstr "从当前位置播放选中动画(D)" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Animation position (in seconds)." -msgstr "动画位置(单位:秒)" +msgstr "动画位置(单位:秒)。" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Scale animation playback globally for the node." -msgstr "节点全局缩放动画回放" +msgstr "节点全局缩放动画回放。" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Create new animation in player." @@ -2933,15 +2936,15 @@ msgstr "新名称:" #: editor/plugins/animation_tree_editor_plugin.cpp #: editor/plugins/multimesh_editor_plugin.cpp msgid "Scale:" -msgstr "缩放" +msgstr "缩放:" #: editor/plugins/animation_tree_editor_plugin.cpp msgid "Fade In (s):" -msgstr "淡入(秒)" +msgstr "淡入(秒):" #: editor/plugins/animation_tree_editor_plugin.cpp msgid "Fade Out (s):" -msgstr "淡出(秒)" +msgstr "淡出(秒):" #: editor/plugins/animation_tree_editor_plugin.cpp msgid "Blend" @@ -2986,7 +2989,7 @@ msgstr "混合1:" #: editor/plugins/animation_tree_editor_plugin.cpp msgid "X-Fade Time (s):" -msgstr "" +msgstr "X-Fade(交叉淡化)时间(s):" #: editor/plugins/animation_tree_editor_plugin.cpp msgid "Current:" @@ -3026,23 +3029,23 @@ msgstr "动画节点" #: editor/plugins/animation_tree_editor_plugin.cpp msgid "OneShot Node" -msgstr "" +msgstr "单项节点" #: editor/plugins/animation_tree_editor_plugin.cpp msgid "Mix Node" -msgstr "" +msgstr "混合(Mix)节点" #: editor/plugins/animation_tree_editor_plugin.cpp msgid "Blend2 Node" -msgstr "" +msgstr "混合2(Blend) 节点" #: editor/plugins/animation_tree_editor_plugin.cpp msgid "Blend3 Node" -msgstr "" +msgstr "混合3(Blend) 节点" #: editor/plugins/animation_tree_editor_plugin.cpp msgid "Blend4 Node" -msgstr "" +msgstr "混合4(Blend) 节点" #: editor/plugins/animation_tree_editor_plugin.cpp msgid "TimeScale Node" @@ -3050,7 +3053,7 @@ msgstr "时间缩放节点" #: editor/plugins/animation_tree_editor_plugin.cpp msgid "TimeSeek Node" -msgstr "" +msgstr "TimeSeek(时间寻找) 节点" #: editor/plugins/animation_tree_editor_plugin.cpp msgid "Transition Node" @@ -3058,7 +3061,7 @@ msgstr "过渡节点" #: editor/plugins/animation_tree_editor_plugin.cpp msgid "Import Animations.." -msgstr "导入动画" +msgstr "导入动画.." #: editor/plugins/animation_tree_editor_plugin.cpp msgid "Edit Node Filters" @@ -3090,19 +3093,19 @@ msgstr "修正光照" #: editor/plugins/baked_light_baker.cpp msgid "Making BVH" -msgstr "" +msgstr "制作BVH(动作骨骼)" #: editor/plugins/baked_light_baker.cpp msgid "Creating Light Octree" -msgstr "" +msgstr "创建光的 Octree(八叉树)" #: editor/plugins/baked_light_baker.cpp msgid "Creating Octree Texture" -msgstr "" +msgstr "创建 Octree (八叉树) 纹理" #: editor/plugins/baked_light_baker.cpp msgid "Transfer to Lightmaps:" -msgstr "" +msgstr "转移到光照贴图:" #: editor/plugins/baked_light_baker.cpp msgid "Allocating Texture #" @@ -3114,7 +3117,7 @@ msgstr "烘培三角形 #" #: editor/plugins/baked_light_baker.cpp msgid "Post-Processing Texture #" -msgstr "" +msgstr "后加工纹理 #" #: editor/plugins/baked_light_editor_plugin.cpp msgid "Bake!" @@ -3122,7 +3125,7 @@ msgstr "烘培!" #: editor/plugins/baked_light_editor_plugin.cpp msgid "Reset the lightmap octree baking process (start over)." -msgstr "" +msgstr "重置贴图烘焙过程 (重新开始) 的 octree (八叉树)。" #: editor/plugins/camera_editor_plugin.cpp #: editor/plugins/sample_library_editor_plugin.cpp @@ -3173,7 +3176,7 @@ msgstr "编辑锚点" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Zoom (%):" -msgstr "缩放(%)" +msgstr "缩放(%):" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Paste Pose" @@ -3212,7 +3215,7 @@ msgstr "旋转模式" msgid "" "Show a list of all objects at the position clicked\n" "(same as Alt+RMB in select mode)." -msgstr "显示鼠标点击位置的所有节点(同Alt+鼠标右键)" +msgstr "显示鼠标点击位置的所有节点(同Alt+鼠标右键)。" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Click to change object's rotation pivot." @@ -3356,11 +3359,11 @@ msgstr "吸附(像素):" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Add %s" -msgstr "添加 %s" +msgstr "添加(Add) %s" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Adding %s..." -msgstr "" +msgstr "添加(Adding) %s..." #: editor/plugins/canvas_item_editor_plugin.cpp editor/scene_tree_dock.cpp msgid "Create Node" @@ -3368,7 +3371,7 @@ msgstr "新节点" #: editor/plugins/canvas_item_editor_plugin.cpp editor/scene_tree_dock.cpp msgid "Error instancing scene from %s" -msgstr "从%s实例化场景出错!" +msgstr "从%s实例化场景出错" #: editor/plugins/canvas_item_editor_plugin.cpp editor/scene_tree_dock.cpp msgid "OK :(" @@ -3396,6 +3399,8 @@ msgid "" "Drag & drop + Shift : Add node as sibling\n" "Drag & drop + Alt : Change node type" msgstr "" +"拖放+ Shift:将节点添加为兄弟节点\n" +"拖放+ Alt:更改节点类型" #: editor/plugins/collision_polygon_2d_editor_plugin.cpp #: editor/plugins/light_occluder_2d_editor_plugin.cpp @@ -3426,32 +3431,34 @@ msgstr "编辑多边形(移除顶点)" #: editor/plugins/light_occluder_2d_editor_plugin.cpp #: editor/plugins/navigation_polygon_editor_plugin.cpp msgid "Create a new polygon from scratch." -msgstr "" +msgstr "从头开始创建一个新的多边形。" #: editor/plugins/collision_polygon_editor_plugin.cpp msgid "Create Poly3D" -msgstr "" +msgstr "创建 Poly3D (多边型3D)" #: editor/plugins/collision_shape_2d_editor_plugin.cpp msgid "Set Handle" -msgstr "" +msgstr "设置处理程序" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp msgid "Add/Remove Color Ramp Point" -msgstr "" +msgstr "添加/删除色彩渐变点" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp #: editor/plugins/shader_graph_editor_plugin.cpp msgid "Modify Color Ramp" -msgstr "" +msgstr "修改色彩曲线图" #: editor/plugins/cube_grid_theme_editor_plugin.cpp msgid "Creating Mesh Library" -msgstr "" +msgstr "创建 Mesh(网格) 库" #: editor/plugins/cube_grid_theme_editor_plugin.cpp msgid "Thumbnail.." -msgstr "" +msgstr "缩略图.." #: editor/plugins/cube_grid_theme_editor_plugin.cpp msgid "Remove item %d?" @@ -3475,6 +3482,11 @@ msgstr "从场景中导入" msgid "Update from Scene" msgstr "从场景中更新" +#: editor/plugins/curve_editor_plugin.cpp +#, fuzzy +msgid "Modify Curve" +msgstr "修改曲线图" + #: editor/plugins/item_list_editor_plugin.cpp msgid "Item %d" msgstr "第%d项" @@ -3499,17 +3511,17 @@ msgstr "编辑已存在的多边形:" #: editor/plugins/light_occluder_2d_editor_plugin.cpp #: editor/plugins/navigation_polygon_editor_plugin.cpp msgid "LMB: Move Point." -msgstr "鼠标左键:移动点" +msgstr "鼠标左键:移动点。" #: editor/plugins/light_occluder_2d_editor_plugin.cpp #: editor/plugins/navigation_polygon_editor_plugin.cpp msgid "Ctrl+LMB: Split Segment." -msgstr "Ctrl+鼠标左键:分割视图块" +msgstr "Ctrl+鼠标左键:分割视图块。" #: editor/plugins/light_occluder_2d_editor_plugin.cpp #: editor/plugins/navigation_polygon_editor_plugin.cpp msgid "RMB: Erase Point." -msgstr "鼠标右键:移除点" +msgstr "鼠标右键:移除点。" #: editor/plugins/line_2d_editor_plugin.cpp #, fuzzy @@ -3554,11 +3566,12 @@ msgstr "鼠标右键:删除点" #: editor/plugins/path_2d_editor_plugin.cpp #: editor/plugins/path_editor_plugin.cpp msgid "Add Point (in empty space)" -msgstr "" +msgstr "添加点(在空白处)" #: editor/plugins/line_2d_editor_plugin.cpp +#, fuzzy msgid "Split Segment (in line)" -msgstr "" +msgstr "拆分(曲线)" #: editor/plugins/line_2d_editor_plugin.cpp #: editor/plugins/path_2d_editor_plugin.cpp @@ -3572,11 +3585,11 @@ msgstr "Mesh为空!" #: editor/plugins/mesh_instance_editor_plugin.cpp msgid "Create Static Trimesh Body" -msgstr "" +msgstr "创建静态三维身体" #: editor/plugins/mesh_instance_editor_plugin.cpp msgid "Create Static Convex Body" -msgstr "" +msgstr "创建静态凸体(Convex Body)" #: editor/plugins/mesh_instance_editor_plugin.cpp msgid "This doesn't work on scene root!" @@ -3584,99 +3597,99 @@ msgstr "此操作无法引用在根节点上!" #: editor/plugins/mesh_instance_editor_plugin.cpp msgid "Create Trimesh Shape" -msgstr "" +msgstr "创建Trimesh(三维网格)形状" #: editor/plugins/mesh_instance_editor_plugin.cpp msgid "Create Convex Shape" -msgstr "" +msgstr "创建 凸(Convex) 形状" #: editor/plugins/mesh_instance_editor_plugin.cpp msgid "Create Navigation Mesh" -msgstr "" +msgstr "创建导航Mesh(网格)" #: editor/plugins/mesh_instance_editor_plugin.cpp msgid "MeshInstance lacks a Mesh!" -msgstr "" +msgstr "MeshInstance (网格实例) 缺少 Mesh(网格)!" #: editor/plugins/mesh_instance_editor_plugin.cpp msgid "Mesh has not surface to create outlines from!" -msgstr "" +msgstr "Mesh(网格)没有表面来创建轮廓(outlines)!" #: editor/plugins/mesh_instance_editor_plugin.cpp msgid "Could not create outline!" -msgstr "" +msgstr "无法创建轮廓(outlines)!" #: editor/plugins/mesh_instance_editor_plugin.cpp msgid "Create Outline" -msgstr "" +msgstr "创建轮廓(outlines)" #: editor/plugins/mesh_instance_editor_plugin.cpp msgid "Create Trimesh Static Body" -msgstr "" +msgstr "创建三维静态身体(Body)" #: editor/plugins/mesh_instance_editor_plugin.cpp msgid "Create Convex Static Body" -msgstr "" +msgstr "创建凸(Convex ) 静态体" #: editor/plugins/mesh_instance_editor_plugin.cpp msgid "Create Trimesh Collision Sibling" -msgstr "" +msgstr "创建三维碰撞同级" #: editor/plugins/mesh_instance_editor_plugin.cpp msgid "Create Convex Collision Sibling" -msgstr "" +msgstr "创建凸(Convex)碰撞同级" #: editor/plugins/mesh_instance_editor_plugin.cpp msgid "Create Outline Mesh.." -msgstr "" +msgstr "创建轮廓网格(Outline Mesh).." #: editor/plugins/mesh_instance_editor_plugin.cpp msgid "Create Outline Mesh" -msgstr "" +msgstr "创建轮廓网格(Outline Mesh)" #: editor/plugins/mesh_instance_editor_plugin.cpp msgid "Outline Size:" -msgstr "" +msgstr "轮廓(outlines)尺寸:" #: editor/plugins/multimesh_editor_plugin.cpp msgid "No mesh source specified (and no MultiMesh set in node)." -msgstr "" +msgstr "未指定网格(Mesh)源(且节点中没有设置多网格物体(MultiMesh))。" #: editor/plugins/multimesh_editor_plugin.cpp msgid "No mesh source specified (and MultiMesh contains no Mesh)." -msgstr "" +msgstr "未指定网格(Mesh)源(且多网格(MultiMesh)不包含网格(Mesh))。" #: editor/plugins/multimesh_editor_plugin.cpp msgid "Mesh source is invalid (invalid path)." -msgstr "" +msgstr "网格(Mesh)源无效(路径无效)。" #: editor/plugins/multimesh_editor_plugin.cpp msgid "Mesh source is invalid (not a MeshInstance)." -msgstr "" +msgstr "网格(Mesh)源无效(不是网格实例(MeshInstance))。" #: editor/plugins/multimesh_editor_plugin.cpp msgid "Mesh source is invalid (contains no Mesh resource)." -msgstr "" +msgstr "网格(Mesh)源无效(不包含网格(Mesh)资源)。" #: editor/plugins/multimesh_editor_plugin.cpp msgid "No surface source specified." -msgstr "" +msgstr "没有指定的表面源。" #: editor/plugins/multimesh_editor_plugin.cpp msgid "Surface source is invalid (invalid path)." -msgstr "" +msgstr "表面的源无效(路径无效)。" #: editor/plugins/multimesh_editor_plugin.cpp msgid "Surface source is invalid (no geometry)." -msgstr "" +msgstr "表面的源无效(无几何)。" #: editor/plugins/multimesh_editor_plugin.cpp msgid "Surface source is invalid (no faces)." -msgstr "" +msgstr "表面的源无效(无面)。" #: editor/plugins/multimesh_editor_plugin.cpp msgid "Parent has no solid faces to populate." -msgstr "" +msgstr "父级没有实体面来填充。" #: editor/plugins/multimesh_editor_plugin.cpp msgid "Couldn't map area." @@ -3692,11 +3705,11 @@ msgstr "选择一个目标曲面:" #: editor/plugins/multimesh_editor_plugin.cpp msgid "Populate Surface" -msgstr "" +msgstr "填充表面" #: editor/plugins/multimesh_editor_plugin.cpp msgid "Populate MultiMesh" -msgstr "" +msgstr "填充MultiMesh(多网格)" #: editor/plugins/multimesh_editor_plugin.cpp msgid "Target Surface:" @@ -3720,7 +3733,7 @@ msgstr "Z轴" #: editor/plugins/multimesh_editor_plugin.cpp msgid "Mesh Up Axis:" -msgstr "" +msgstr "Mesh (网格)上轴:" #: editor/plugins/multimesh_editor_plugin.cpp msgid "Random Rotation:" @@ -3736,7 +3749,7 @@ msgstr "随机缩放:" #: editor/plugins/multimesh_editor_plugin.cpp msgid "Populate" -msgstr "" +msgstr "填充" #: editor/plugins/navigation_polygon_editor_plugin.cpp msgid "Create Navigation Polygon" @@ -3752,19 +3765,19 @@ msgstr "加载图片出错:" #: editor/plugins/particles_2d_editor_plugin.cpp msgid "No pixels with transparency > 128 in image.." -msgstr "" +msgstr "图片中没有透明度> 128的像素.." #: editor/plugins/particles_2d_editor_plugin.cpp msgid "Set Emission Mask" -msgstr "" +msgstr "设置Emission Mask(发射屏蔽)" #: editor/plugins/particles_2d_editor_plugin.cpp msgid "Clear Emission Mask" -msgstr "" +msgstr "清除Emission Mask(发射屏蔽)" #: editor/plugins/particles_2d_editor_plugin.cpp msgid "Load Emission Mask" -msgstr "" +msgstr "加载Emission Mask(发射屏蔽)" #: editor/plugins/particles_2d_editor_plugin.cpp msgid "Generated Point Count:" @@ -3772,55 +3785,68 @@ msgstr "生成顶点计数:" #: editor/plugins/particles_editor_plugin.cpp msgid "Node does not contain geometry." -msgstr "" +msgstr "节点不包含几何。" #: editor/plugins/particles_editor_plugin.cpp msgid "Node does not contain geometry (faces)." +msgstr "节点不包含几何(面)。" + +#: editor/plugins/particles_editor_plugin.cpp +msgid "A processor material of type 'ParticlesMaterial' is required." msgstr "" #: editor/plugins/particles_editor_plugin.cpp msgid "Faces contain no area!" -msgstr "" +msgstr "面不含有区域!" #: editor/plugins/particles_editor_plugin.cpp msgid "No faces!" -msgstr "" +msgstr "没有面!" #: editor/plugins/particles_editor_plugin.cpp msgid "Generate AABB" msgstr "生成AABB" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Mesh" -msgstr "" +#, fuzzy +msgid "Create Emission Points From Mesh" +msgstr "从网格( Mesh)创建发射器(Emitter)" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Node" -msgstr "" +#, fuzzy +msgid "Create Emission Points From Node" +msgstr "从节点创建发射器(Emitter)" #: editor/plugins/particles_editor_plugin.cpp msgid "Clear Emitter" -msgstr "" +msgstr "清除发射器(Emitter)" #: editor/plugins/particles_editor_plugin.cpp msgid "Create Emitter" -msgstr "" +msgstr "创建发射器(Emitter)" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Positions:" -msgstr "" +#, fuzzy +msgid "Emission Points:" +msgstr "发射位置:" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Fill:" -msgstr "" +#, fuzzy +msgid "Surface Points" +msgstr "表面 %d" #: editor/plugins/particles_editor_plugin.cpp -msgid "Surface" +msgid "Surface Points+Normal (Directed)" msgstr "" #: editor/plugins/particles_editor_plugin.cpp msgid "Volume" -msgstr "" +msgstr "体积" + +#: editor/plugins/particles_editor_plugin.cpp +#, fuzzy +msgid "Emission Source: " +msgstr "发射填充:" #: editor/plugins/path_2d_editor_plugin.cpp msgid "Remove Point from Curve" @@ -3850,7 +3876,7 @@ msgstr "选择控制点(Shift+拖动)" #: editor/plugins/path_2d_editor_plugin.cpp #: editor/plugins/path_editor_plugin.cpp msgid "Split Segment (in curve)" -msgstr "" +msgstr "拆分(曲线)" #: editor/plugins/path_2d_editor_plugin.cpp #: editor/plugins/path_editor_plugin.cpp @@ -3867,15 +3893,15 @@ msgstr "设置曲线顶点坐标" #: editor/plugins/path_editor_plugin.cpp msgid "Set Curve In Pos" -msgstr "" +msgstr "设置的曲线输入位置(Pos)" #: editor/plugins/path_editor_plugin.cpp msgid "Set Curve Out Pos" -msgstr "" +msgstr "设置曲线输出位置(Pos)" #: editor/plugins/path_editor_plugin.cpp msgid "Split Path" -msgstr "" +msgstr "拆分路径" #: editor/plugins/path_editor_plugin.cpp msgid "Remove Path Point" @@ -4022,7 +4048,7 @@ msgstr "立体声" #: editor/plugins/sample_library_editor_plugin.cpp msgid "Mono" -msgstr "" +msgstr "单声道" #: editor/plugins/sample_library_editor_plugin.cpp #: editor/script_editor_debugger.cpp @@ -4031,11 +4057,11 @@ msgstr "格式" #: editor/plugins/sample_library_editor_plugin.cpp msgid "Pitch" -msgstr "" +msgstr "音调" #: editor/plugins/script_editor_plugin.cpp msgid "Error while saving theme" -msgstr "保存主题出错。" +msgstr "保存主题出错" #: editor/plugins/script_editor_plugin.cpp msgid "Error saving" @@ -4043,7 +4069,7 @@ msgstr "保存出错" #: editor/plugins/script_editor_plugin.cpp msgid "Error importing theme" -msgstr "导入主题出错。" +msgstr "导入主题出错" #: editor/plugins/script_editor_plugin.cpp msgid "Error importing" @@ -4055,7 +4081,7 @@ msgstr "导入主题" #: editor/plugins/script_editor_plugin.cpp msgid "Save Theme As.." -msgstr "主题另存为" +msgstr "主题另存为.." #: editor/plugins/script_editor_plugin.cpp msgid "Next script" @@ -4171,19 +4197,19 @@ msgstr "类型" #: editor/plugins/script_editor_plugin.cpp msgid "Search the class hierarchy." -msgstr "搜索类" +msgstr "搜索类。" #: editor/plugins/script_editor_plugin.cpp msgid "Search the reference documentation." -msgstr "搜索文档" +msgstr "搜索文档。" #: editor/plugins/script_editor_plugin.cpp msgid "Go to previous edited document." -msgstr "前往上一个编辑文档" +msgstr "前往上一个编辑文档。" #: editor/plugins/script_editor_plugin.cpp msgid "Go to next edited document." -msgstr "前往下一个编辑文档" +msgstr "前往下一个编辑文档。" #: editor/plugins/script_editor_plugin.cpp #, fuzzy @@ -4331,19 +4357,19 @@ msgstr "修改RGB常量系数" #: editor/plugins/shader_graph_editor_plugin.cpp msgid "Change Scalar Operator" -msgstr "" +msgstr "更改标量运算符(Scalar Operator)" #: editor/plugins/shader_graph_editor_plugin.cpp msgid "Change Vec Operator" -msgstr "" +msgstr "更改 Vec 运算符(Vec Operator)" #: editor/plugins/shader_graph_editor_plugin.cpp msgid "Change Vec Scalar Operator" -msgstr "" +msgstr "更改Vec标量运算符(Vec Scalar Operator)" #: editor/plugins/shader_graph_editor_plugin.cpp msgid "Change RGB Operator" -msgstr "" +msgstr "更改RGB运算符(RGB Operator)" #: editor/plugins/shader_graph_editor_plugin.cpp msgid "Toggle Rot Only" @@ -4391,15 +4417,15 @@ msgstr "修改注释" #: editor/plugins/shader_graph_editor_plugin.cpp msgid "Add/Remove to Color Ramp" -msgstr "" +msgstr "添加/删除颜色坡度" #: editor/plugins/shader_graph_editor_plugin.cpp msgid "Add/Remove to Curve Map" -msgstr "" +msgstr "添加/删除曲线地图" #: editor/plugins/shader_graph_editor_plugin.cpp msgid "Modify Curve Map" -msgstr "" +msgstr "修改曲线图" #: editor/plugins/shader_graph_editor_plugin.cpp msgid "Change Input Name" @@ -4467,75 +4493,75 @@ msgstr "Z轴变换。" #: editor/plugins/spatial_editor_plugin.cpp msgid "View Plane Transform." -msgstr "" +msgstr "视图平面变换。" #: editor/plugins/spatial_editor_plugin.cpp msgid "Scaling to %s%%." -msgstr "缩放到%s%%" +msgstr "缩放到%s%%。" #: editor/plugins/spatial_editor_plugin.cpp msgid "Rotating %s degrees." -msgstr "旋转%s度" +msgstr "旋转%s度。" #: editor/plugins/spatial_editor_plugin.cpp msgid "Bottom View." -msgstr "" +msgstr "仰视图(Bottom View)。" #: editor/plugins/spatial_editor_plugin.cpp msgid "Bottom" -msgstr "" +msgstr "底部" #: editor/plugins/spatial_editor_plugin.cpp msgid "Top View." -msgstr "" +msgstr "俯视图(Top View)。" #: editor/plugins/spatial_editor_plugin.cpp msgid "Top" -msgstr "" +msgstr "顶部" #: editor/plugins/spatial_editor_plugin.cpp msgid "Rear View." -msgstr "" +msgstr "后视图。" #: editor/plugins/spatial_editor_plugin.cpp msgid "Rear" -msgstr "" +msgstr "后方" #: editor/plugins/spatial_editor_plugin.cpp msgid "Front View." -msgstr "" +msgstr "正视图。" #: editor/plugins/spatial_editor_plugin.cpp msgid "Front" -msgstr "" +msgstr "前面" #: editor/plugins/spatial_editor_plugin.cpp msgid "Left View." -msgstr "" +msgstr "左视图。" #: editor/plugins/spatial_editor_plugin.cpp msgid "Left" -msgstr "" +msgstr "左方" #: editor/plugins/spatial_editor_plugin.cpp msgid "Right View." -msgstr "" +msgstr "右视图。" #: editor/plugins/spatial_editor_plugin.cpp msgid "Right" -msgstr "" +msgstr "右方" #: editor/plugins/spatial_editor_plugin.cpp msgid "Keying is disabled (no key inserted)." -msgstr "" +msgstr "键控被禁用(未插入键)。" #: editor/plugins/spatial_editor_plugin.cpp msgid "Animation Key Inserted." -msgstr "" +msgstr "插入动画键。" #: editor/plugins/spatial_editor_plugin.cpp msgid "Align with view" -msgstr "" +msgstr "与视图对齐" #: editor/plugins/spatial_editor_plugin.cpp msgid "Environment" @@ -4543,11 +4569,11 @@ msgstr "环境" #: editor/plugins/spatial_editor_plugin.cpp msgid "Audio Listener" -msgstr "" +msgstr "音频监听器" #: editor/plugins/spatial_editor_plugin.cpp msgid "Gizmos" -msgstr "" +msgstr "Gizmos(可视化调试工具)" #: editor/plugins/spatial_editor_plugin.cpp msgid "XForm Dialog" @@ -4559,7 +4585,7 @@ msgstr "没有选用要实例化的场景!" #: editor/plugins/spatial_editor_plugin.cpp msgid "Instance at Cursor" -msgstr "" +msgstr "光标处实例" #: editor/plugins/spatial_editor_plugin.cpp msgid "Could not instance scene!" @@ -4579,7 +4605,7 @@ msgstr "缩放模式(R)" #: editor/plugins/spatial_editor_plugin.cpp msgid "Bottom View" -msgstr "" +msgstr "底部视图" #: editor/plugins/spatial_editor_plugin.cpp msgid "Top View" @@ -4675,11 +4701,11 @@ msgstr "显示线框" #: editor/plugins/spatial_editor_plugin.cpp msgid "Display Overdraw" -msgstr "" +msgstr "显示过度绘制" #: editor/plugins/spatial_editor_plugin.cpp msgid "Display Shadeless" -msgstr "" +msgstr "显示无阴影" #: editor/plugins/spatial_editor_plugin.cpp msgid "View Origin" @@ -4691,19 +4717,19 @@ msgstr "显示网格" #: editor/plugins/spatial_editor_plugin.cpp msgid "Snap Settings" -msgstr "" +msgstr "捕捉(snap)设置" #: editor/plugins/spatial_editor_plugin.cpp msgid "Translate Snap:" -msgstr "" +msgstr "移动捕捉(Snap):" #: editor/plugins/spatial_editor_plugin.cpp msgid "Rotate Snap (deg.):" -msgstr "" +msgstr "旋转捕捉(Snap)(度):" #: editor/plugins/spatial_editor_plugin.cpp msgid "Scale Snap (%):" -msgstr "" +msgstr "缩放捕捉(%):" #: editor/plugins/spatial_editor_plugin.cpp msgid "Viewport Settings" @@ -4723,11 +4749,11 @@ msgstr "透视视角(角度):" #: editor/plugins/spatial_editor_plugin.cpp msgid "View Z-Near:" -msgstr "查看Z-Near" +msgstr "查看Z-Near:" #: editor/plugins/spatial_editor_plugin.cpp msgid "View Z-Far:" -msgstr "查看Z-Far" +msgstr "查看Z-Far:" #: editor/plugins/spatial_editor_plugin.cpp msgid "Transform Change" @@ -4751,11 +4777,11 @@ msgstr "变换类型" #: editor/plugins/spatial_editor_plugin.cpp msgid "Pre" -msgstr "" +msgstr "前(per)" #: editor/plugins/spatial_editor_plugin.cpp msgid "Post" -msgstr "" +msgstr "发布(Post)" #: editor/plugins/sprite_frames_editor_plugin.cpp msgid "ERROR: Couldn't load frame resource!" @@ -4795,7 +4821,7 @@ msgstr "动画" #: editor/plugins/sprite_frames_editor_plugin.cpp msgid "Speed (FPS):" -msgstr "速度(FPS)" +msgstr "速度(FPS):" #: editor/plugins/sprite_frames_editor_plugin.cpp msgid "Animation Frames" @@ -4847,7 +4873,7 @@ msgstr "网格偏移量:" #: editor/plugins/texture_region_editor_plugin.cpp msgid "Step:" -msgstr "步长(秒)" +msgstr "步长(秒):" #: editor/plugins/texture_region_editor_plugin.cpp msgid "Separation:" @@ -4908,23 +4934,23 @@ msgstr "复选框 选项2" #: editor/plugins/theme_editor_plugin.cpp msgid "Item" -msgstr "" +msgstr "项目(Item)" #: editor/plugins/theme_editor_plugin.cpp msgid "Check Item" -msgstr "" +msgstr "检查项目(Item)" #: editor/plugins/theme_editor_plugin.cpp msgid "Checked Item" -msgstr "" +msgstr "已选项目(Checked Item)" #: editor/plugins/theme_editor_plugin.cpp msgid "Has" -msgstr "" +msgstr "有(Has)" #: editor/plugins/theme_editor_plugin.cpp msgid "Many" -msgstr "" +msgstr "许多(Many)" #: editor/plugins/theme_editor_plugin.cpp editor/project_export.cpp msgid "Options" @@ -4932,7 +4958,7 @@ msgstr "选项" #: editor/plugins/theme_editor_plugin.cpp msgid "Have,Many,Several,Options!" -msgstr "" +msgstr "有,很多,几个,选项(Have,Many,Several,Options)!" #: editor/plugins/theme_editor_plugin.cpp msgid "Tab 1" @@ -5001,7 +5027,7 @@ msgstr "沿Y轴翻转" #: editor/plugins/tile_map_editor_plugin.cpp msgid "Bucket" -msgstr "" +msgstr "桶(Bucket)" #: editor/plugins/tile_map_editor_plugin.cpp msgid "Pick Tile" @@ -5033,7 +5059,7 @@ msgstr "找不到砖块:" #: editor/plugins/tile_set_editor_plugin.cpp msgid "Item name or ID:" -msgstr "项目名称或ID" +msgstr "项目名称或ID:" #: editor/plugins/tile_set_editor_plugin.cpp msgid "Create from scene?" @@ -5077,7 +5103,7 @@ msgstr "预设.." #: editor/project_export.cpp editor/project_settings.cpp msgid "Add.." -msgstr "添加:" +msgstr "添加.." #: editor/project_export.cpp msgid "Resources" @@ -5086,17 +5112,17 @@ msgstr "资源" #: editor/project_export.cpp #, fuzzy msgid "Export all resources in the project" -msgstr "导出项目中的所有资源" +msgstr "导出项目中的所有资源。" #: editor/project_export.cpp #, fuzzy msgid "Export selected scenes (and dependencies)" -msgstr "导出选中的资源(包括其依赖资源)" +msgstr "导出选中的资源(包括其依赖资源)。" #: editor/project_export.cpp #, fuzzy msgid "Export selected resources (and dependencies)" -msgstr "导出选中的资源(包括其依赖资源)" +msgstr "导出选中的资源(包括其依赖资源)。" #: editor/project_export.cpp msgid "Export Mode:" @@ -5143,10 +5169,12 @@ msgid "Invalid project path, the path must exist!" msgstr "项目目录不存在!" #: editor/project_manager.cpp +#, fuzzy msgid "Invalid project path, godot.cfg must not exist." msgstr "项目目录下必须包含engin.cfg文件。" #: editor/project_manager.cpp +#, fuzzy msgid "Invalid project path, godot.cfg must exist." msgstr "项目目录下必须包含engin.cfg文件。" @@ -5159,8 +5187,9 @@ msgid "Invalid project path (changed anything?)." msgstr "项目路径非法(被外部修改?)。" #: editor/project_manager.cpp +#, fuzzy msgid "Couldn't create godot.cfg in project path." -msgstr "无法在项目目录下创建godot.cfg文件。" +msgstr "无法在项目目录下创建engine.cfg文件。" #: editor/project_manager.cpp msgid "The following files failed extraction from package:" @@ -5168,7 +5197,7 @@ msgstr "提取以下文件失败:" #: editor/project_manager.cpp msgid "Package Installed Successfully!" -msgstr "" +msgstr "软件包安装成功!" #: editor/project_manager.cpp msgid "Import Existing Project" @@ -5176,7 +5205,7 @@ msgstr "导入现有项目" #: editor/project_manager.cpp msgid "Project Path (Must Exist):" -msgstr "项目目录(必须存在)" +msgstr "项目目录(必须存在):" #: editor/project_manager.cpp msgid "Project Name:" @@ -5188,7 +5217,7 @@ msgstr "新建项目" #: editor/project_manager.cpp msgid "Project Path:" -msgstr "项目目录" +msgstr "项目目录:" #: editor/project_manager.cpp msgid "Install Project:" @@ -5274,11 +5303,11 @@ msgstr "摇杆轴" #: editor/project_settings.cpp msgid "Mouse Button" -msgstr "鼠标按键:" +msgstr "鼠标按键" #: editor/project_settings.cpp msgid "Invalid action (anything goes but '/' or ':')." -msgstr "Action名非法(不得包含'/'或':')" +msgstr "Action名非法(不得包含'/'或':')。" #: editor/project_settings.cpp msgid "Action '%s' already exists!" @@ -5358,7 +5387,7 @@ msgstr "按键 9" #: editor/project_settings.cpp #, fuzzy msgid "Joypad Axis Index:" -msgstr "手柄摇杆" +msgstr "手柄摇杆:" #: editor/project_settings.cpp scene/gui/input_action.cpp msgid "Axis" @@ -5367,7 +5396,7 @@ msgstr "轴" #: editor/project_settings.cpp #, fuzzy msgid "Joypad Button Index:" -msgstr "手柄按钮" +msgstr "手柄按钮:" #: editor/project_settings.cpp msgid "Add Input Action" @@ -5387,23 +5416,23 @@ msgstr "按钮" #: editor/project_settings.cpp scene/gui/input_action.cpp msgid "Left Button." -msgstr "左键" +msgstr "左键。" #: editor/project_settings.cpp scene/gui/input_action.cpp msgid "Right Button." -msgstr "右键" +msgstr "右键。" #: editor/project_settings.cpp scene/gui/input_action.cpp msgid "Middle Button." -msgstr "中键(滚轮)" +msgstr "中键(滚轮)。" #: editor/project_settings.cpp scene/gui/input_action.cpp msgid "Wheel Up." -msgstr "滚轮向上滚动" +msgstr "滚轮向上滚动。" #: editor/project_settings.cpp scene/gui/input_action.cpp msgid "Wheel Down." -msgstr "滚轮向下滚动" +msgstr "滚轮向下滚动。" #: editor/project_settings.cpp msgid "Error saving settings." @@ -5442,8 +5471,9 @@ msgid "Remove Resource Remap Option" msgstr "移除资源重定向选项" #: editor/project_settings.cpp +#, fuzzy msgid "Project Settings (godot.cfg)" -msgstr "项目设置(godot.cfg)" +msgstr "项目设置(engine.cfg)" #: editor/project_settings.cpp editor/settings_config_dialog.cpp msgid "General" @@ -5507,7 +5537,7 @@ msgstr "地区" #: editor/project_settings.cpp msgid "AutoLoad" -msgstr "AutoLoad" +msgstr "自动加载(AutoLoad)" #: editor/project_settings.cpp msgid "Plugins" @@ -5548,7 +5578,7 @@ msgstr "目录.." #: editor/property_editor.cpp msgid "Assign" -msgstr "" +msgstr "分配(Assign)" #: editor/property_editor.cpp msgid "New Script" @@ -5574,7 +5604,7 @@ msgstr "选择一个节点" #: editor/property_editor.cpp msgid "Bit %d, val %d." -msgstr "" +msgstr "(Bit)位 %d, val %d." #: editor/property_editor.cpp msgid "On" @@ -5614,7 +5644,7 @@ msgstr "重设父节点" #: editor/reparent_dialog.cpp msgid "Reparent Location (Select new Parent):" -msgstr "重设位置(选择父节点)" +msgstr "重设位置(选择父节点):" #: editor/reparent_dialog.cpp msgid "Keep Global Transform" @@ -5642,7 +5672,7 @@ msgstr "资源工具" #: editor/resources_dock.cpp msgid "Make Local" -msgstr "" +msgstr "使用本地" #: editor/run_settings_dialog.cpp msgid "Run Mode:" @@ -5670,7 +5700,7 @@ msgstr "没有选中节点来添加实例。" #: editor/scene_tree_dock.cpp msgid "Error loading scene from %s" -msgstr "从%s加载场景出错!" +msgstr "从%s加载场景出错" #: editor/scene_tree_dock.cpp msgid "Ok" @@ -5813,11 +5843,11 @@ msgstr "实例化场景文件为一个节点,如果没有根节点则创建一 #: editor/scene_tree_dock.cpp msgid "Attach a new or existing script for the selected node." -msgstr "为选中节点创建或设置脚本" +msgstr "为选中节点创建或设置脚本。" #: editor/scene_tree_dock.cpp msgid "Clear a script for the selected node." -msgstr "清除选中节点的脚本" +msgstr "清除选中节点的脚本。" #: editor/scene_tree_editor.cpp msgid "Toggle Spatial Visible" @@ -5853,7 +5883,7 @@ msgstr "加载为占位符" #: editor/scene_tree_editor.cpp msgid "Discard Instancing" -msgstr "" +msgstr "废弃实例化" #: editor/scene_tree_editor.cpp msgid "Open in Editor" @@ -5865,7 +5895,7 @@ msgstr "清除继承" #: editor/scene_tree_editor.cpp msgid "Clear Inheritance? (No Undo!)" -msgstr "确定要清除继承吗(无法撤销!)?" +msgstr "确定要清除继承吗?(无法撤销!)" #: editor/scene_tree_editor.cpp msgid "Clear!" @@ -5897,11 +5927,11 @@ msgstr "N/A" #: editor/script_create_dialog.cpp msgid "Class name is invalid!" -msgstr "类名非法" +msgstr "类名非法!" #: editor/script_create_dialog.cpp msgid "Parent class name is invalid!" -msgstr "基类名称非法" +msgstr "基类名称非法!" #: editor/script_create_dialog.cpp msgid "Invalid path!" @@ -5913,7 +5943,7 @@ msgstr "无法创建脚本。" #: editor/script_create_dialog.cpp msgid "Error loading script from %s" -msgstr "从%s加载脚本出错!" +msgstr "从%s加载脚本出错" #: editor/script_create_dialog.cpp msgid "Path is empty" @@ -5957,7 +5987,7 @@ msgstr "字节:" #: editor/script_editor_debugger.cpp msgid "Warning" -msgstr "警告:" +msgstr "警告" #: editor/script_editor_debugger.cpp msgid "Error:" @@ -5989,7 +6019,7 @@ msgstr "编辑下一个实例" #: editor/script_editor_debugger.cpp msgid "Stack Frames" -msgstr "" +msgstr "堆栈帧(Frames)" #: editor/script_editor_debugger.cpp msgid "Variable" @@ -6116,9 +6146,8 @@ msgid "Change Notifier Extents" msgstr "更改通知器级别" #: editor/spatial_editor_gizmos.cpp -#, fuzzy msgid "Change Probe Extents" -msgstr "更改通知器级别" +msgstr "更改探针(Probe)范围" #: modules/gdscript/gd_functions.cpp #: modules/visual_script/visual_script_builtin_funcs.cpp @@ -6387,7 +6416,7 @@ msgstr "迭代器失效: " #: modules/visual_script/visual_script_func_nodes.cpp msgid "Invalid index property name." -msgstr "属性名称非法" +msgstr "属性名称非法。" #: modules/visual_script/visual_script_func_nodes.cpp msgid "Base object is not a Node!" @@ -6395,11 +6424,11 @@ msgstr "基础对象不是一个节点!" #: modules/visual_script/visual_script_func_nodes.cpp msgid "Path does not lead Node!" -msgstr "路径必须指向节点" +msgstr "路径必须指向节点!" #: modules/visual_script/visual_script_func_nodes.cpp msgid "Invalid index property name '%s' in node %s." -msgstr "节点%s的'%s'为无效索引属性名。" +msgstr "节点 '%s' 的 '%s' 为无效索引属性名。" #: modules/visual_script/visual_script_nodes.cpp msgid ": Invalid argument of type: " @@ -6435,7 +6464,32 @@ msgstr "正好按下" msgid "just released" msgstr "刚好释放" +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Run in Browser" +msgstr "浏览" + +#: platform/javascript/export/export.cpp +msgid "Run exported HTML in the system's default browser." +msgstr "" + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not write file:\n" +msgstr "找不到砖块:" + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not read file:\n" +msgstr "找不到砖块:" + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not open template for export:\n" +msgstr "无法创建目录。" + #: platform/uwp/export/export.cpp +#, fuzzy msgid "" "Couldn't read the certificate file. Are the path and password both correct?" msgstr "无法读取证书文件。路径和密码是否都正确?" @@ -6458,15 +6512,15 @@ msgstr "" #: platform/uwp/export/export.cpp msgid "Custom debug package not found." -msgstr "" +msgstr "找不到自定义调试包。" #: platform/uwp/export/export.cpp msgid "Custom release package not found." -msgstr "" +msgstr "找不到自定义发布包。" #: platform/uwp/export/export.cpp msgid "Invalid unique name." -msgstr "名称非法:" +msgstr "名称非法。" #: platform/uwp/export/export.cpp msgid "Invalid product GUID." @@ -6474,7 +6528,7 @@ msgstr "产品GUID非法。" #: platform/uwp/export/export.cpp msgid "Invalid publisher GUID." -msgstr "发布GUID非法" +msgstr "发布GUID非法。" #: platform/uwp/export/export.cpp msgid "Invalid background color." @@ -6486,27 +6540,27 @@ msgstr "Logo图片尺寸无效(图像尺寸必须是50x50)。" #: platform/uwp/export/export.cpp msgid "Invalid square 44x44 logo image dimensions (should be 44x44)." -msgstr "" +msgstr "正方形的 44x44 Logo图片尺寸无效(应为44x44)。" #: platform/uwp/export/export.cpp msgid "Invalid square 71x71 logo image dimensions (should be 71x71)." -msgstr "" +msgstr "正方形的 71x71 Logo标志图片尺寸无效(应为71x71)。" #: platform/uwp/export/export.cpp msgid "Invalid square 150x150 logo image dimensions (should be 150x150)." -msgstr "" +msgstr "正方的 150x150 Logo图片尺寸无效(应为150x150)。" #: platform/uwp/export/export.cpp msgid "Invalid square 310x310 logo image dimensions (should be 310x310)." -msgstr "" +msgstr "正方形的 310x310 Logo图片尺寸无效(应为310x310)。" #: platform/uwp/export/export.cpp msgid "Invalid wide 310x150 logo image dimensions (should be 310x150)." -msgstr "" +msgstr "宽幅310x150 Logo图片尺寸无效(应为310x150)。" #: platform/uwp/export/export.cpp msgid "Invalid splash screen image dimensions (should be 620x300)." -msgstr "" +msgstr "启动画面图片尺寸无效(应为620x300)。" #: scene/2d/animated_sprite.cpp msgid "" @@ -6734,6 +6788,9 @@ msgstr "" "使其成为子控件的所以它可以有一个尺寸大小值。否则请设置为Render target,并将其" "内部纹理分配给一些节点以显示。" +#~ msgid "Surface" +#~ msgstr "表面" + #~ msgid "" #~ "A SampleLibrary resource must be created or set in the 'samples' property " #~ "in order for SamplePlayer to play sound." @@ -6749,7 +6806,7 @@ msgstr "" #~ "才能正常播放声音。" #~ msgid "Replaced %d Ocurrence(s)." -#~ msgstr "替换了%d项" +#~ msgstr "替换了%d项。" #~ msgid "Please save the scene first." #~ msgstr "请先保存场景。" @@ -6758,7 +6815,7 @@ msgstr "" #~ msgstr "保存可翻译字符串" #~ msgid "Translatable Strings.." -#~ msgstr "可翻译字符串" +#~ msgstr "可翻译字符串.." #~ msgid "Install Export Templates" #~ msgstr "安装导出模板" @@ -6778,33 +6835,51 @@ msgstr "" #~ msgid "No exporter for platform '%s' yet." #~ msgstr "没有针对'%s'平台的导出模板。" -#, fuzzy #~ msgid "Create Android keystore" -#~ msgstr "创建资源" +#~ msgstr "创建 Android 的密钥库" -#, fuzzy #~ msgid "Full name" -#~ msgstr "名称可用" +#~ msgstr "全名" + +#~ msgid "Organizational unit" +#~ msgstr "组织单元" -#, fuzzy #~ msgid "Organization" -#~ msgstr "过渡" +#~ msgstr "组织" + +#~ msgid "City" +#~ msgstr "城市(City)" -#, fuzzy #~ msgid "State" -#~ msgstr "状态" +#~ msgstr "州(State)" + +#~ msgid "2 letter country code" +#~ msgstr "2个字母的国家代码" + +#~ msgid "User alias" +#~ msgstr "用户别名" -#, fuzzy #~ msgid "Password" #~ msgstr "密码" -#, fuzzy #~ msgid "at least 6 characters" -#~ msgstr "字符合法:" +#~ msgstr "至少6个字符" -#, fuzzy #~ msgid "File name" -#~ msgstr "新名称:" +#~ msgstr "文件名" + +#~ msgid "Path : (better to save outside of project)" +#~ msgstr "路径:(更好的保存项目外)" + +#~ msgid "" +#~ "Release keystore is not set.\n" +#~ "Do you want to create one?" +#~ msgstr "" +#~ "未设置发布密钥库。\n" +#~ "您要创建一个吗?" + +#~ msgid "Fill Keystore/Release User and Release Password" +#~ msgstr "填写密钥库/发布用户和发布密码" #~ msgid "Include" #~ msgstr "包含" @@ -6840,7 +6915,7 @@ msgstr "" #~ msgstr "导出到平台" #~ msgid "Export all files in the project directory." -#~ msgstr "导出项目目录下的所有文件" +#~ msgstr "导出项目目录下的所有文件。" #~ msgid "Action" #~ msgstr "动作" @@ -6864,7 +6939,7 @@ msgstr "" #~ msgstr "转换图片(*.png):" #~ msgid "Compress for Disk (Lossy) Quality:" -#~ msgstr "高质量(有损)节省磁盘空间" +#~ msgstr "高质量(有损)节省磁盘空间:" #~ msgid "Shrink All Images:" #~ msgstr "收缩所有图片:" @@ -6897,13 +6972,13 @@ msgstr "" #~ msgstr "收缩方式:" #~ msgid "Preview Atlas" -#~ msgstr "精灵集预览:" +#~ msgstr "精灵集预览" #~ msgid "Image Filter:" -#~ msgstr "纹理过滤:\t\t" +#~ msgstr "纹理过滤:" #~ msgid "Images:" -#~ msgstr "图片" +#~ msgstr "图片:" #~ msgid "Select None" #~ msgstr "取消选择" @@ -6929,6 +7004,9 @@ msgstr "" #~ msgid "Trim" #~ msgstr "修剪" +#~ msgid "Trailing Silence:" +#~ msgstr "尾随沉默(Trailing Silence):" + #~ msgid "Script" #~ msgstr "脚本" @@ -6945,7 +7023,7 @@ msgstr "" #~ msgstr "使用下列密码加密" #~ msgid "Script Encryption Key (256-bits as hex):" -#~ msgstr "脚本密匙(256位16进制码)" +#~ msgstr "脚本密匙(256位16进制码):" #~ msgid "Export PCK/Zip" #~ msgstr "导出 PCK/ZIP" @@ -6960,7 +7038,7 @@ msgstr "" #~ msgstr "项目导出" #~ msgid "Export Preset:" -#~ msgstr "导出预设" +#~ msgstr "导出预设:" #~ msgid "BakedLightInstance does not contain a BakedLight resource." #~ msgstr "BakedLightInstance未包含BakedLight资源。" diff --git a/editor/translations/zh_HK.po b/editor/translations/zh_HK.po index bc02a0a593..7c06087fd2 100644 --- a/editor/translations/zh_HK.po +++ b/editor/translations/zh_HK.po @@ -919,7 +919,7 @@ msgstr "" msgid "Packing" msgstr "" -#: editor/editor_export.cpp +#: editor/editor_export.cpp platform/javascript/export/export.cpp msgid "Template file not found:\n" msgstr "" @@ -3404,10 +3404,12 @@ msgid "Set Handle" msgstr "" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp msgid "Add/Remove Color Ramp Point" msgstr "" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp #: editor/plugins/shader_graph_editor_plugin.cpp msgid "Modify Color Ramp" msgstr "" @@ -3442,6 +3444,10 @@ msgstr "" msgid "Update from Scene" msgstr "" +#: editor/plugins/curve_editor_plugin.cpp +msgid "Modify Curve" +msgstr "" + #: editor/plugins/item_list_editor_plugin.cpp msgid "Item %d" msgstr "" @@ -3743,6 +3749,10 @@ msgid "Node does not contain geometry (faces)." msgstr "" #: editor/plugins/particles_editor_plugin.cpp +msgid "A processor material of type 'ParticlesMaterial' is required." +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp msgid "Faces contain no area!" msgstr "" @@ -3755,11 +3765,11 @@ msgid "Generate AABB" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Mesh" +msgid "Create Emission Points From Mesh" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Node" +msgid "Create Emission Points From Node" msgstr "" #: editor/plugins/particles_editor_plugin.cpp @@ -3771,21 +3781,25 @@ msgid "Create Emitter" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Positions:" +msgid "Emission Points:" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Fill:" +msgid "Surface Points" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Surface" +msgid "Surface Points+Normal (Directed)" msgstr "" #: editor/plugins/particles_editor_plugin.cpp msgid "Volume" msgstr "" +#: editor/plugins/particles_editor_plugin.cpp +msgid "Emission Source: " +msgstr "" + #: editor/plugins/path_2d_editor_plugin.cpp msgid "Remove Point from Curve" msgstr "" @@ -6406,6 +6420,30 @@ msgstr "" msgid "just released" msgstr "" +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Run in Browser" +msgstr "瀏覽" + +#: platform/javascript/export/export.cpp +msgid "Run exported HTML in the system's default browser." +msgstr "" + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not write file:\n" +msgstr "無法新增資料夾" + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not read file:\n" +msgstr "無法新增資料夾" + +#: platform/javascript/export/export.cpp +#, fuzzy +msgid "Could not open template for export:\n" +msgstr "無法新增資料夾" + #: platform/uwp/export/export.cpp msgid "" "Couldn't read the certificate file. Are the path and password both correct?" diff --git a/editor/translations/zh_TW.po b/editor/translations/zh_TW.po index 17e37bdfe2..34943b9eb4 100644 --- a/editor/translations/zh_TW.po +++ b/editor/translations/zh_TW.po @@ -911,7 +911,7 @@ msgstr "" msgid "Packing" msgstr "" -#: editor/editor_export.cpp +#: editor/editor_export.cpp platform/javascript/export/export.cpp msgid "Template file not found:\n" msgstr "" @@ -3383,10 +3383,12 @@ msgid "Set Handle" msgstr "" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp msgid "Add/Remove Color Ramp Point" msgstr "" #: editor/plugins/color_ramp_editor_plugin.cpp +#: editor/plugins/gradient_texture_editor_plugin.cpp #: editor/plugins/shader_graph_editor_plugin.cpp msgid "Modify Color Ramp" msgstr "" @@ -3421,6 +3423,10 @@ msgstr "" msgid "Update from Scene" msgstr "" +#: editor/plugins/curve_editor_plugin.cpp +msgid "Modify Curve" +msgstr "" + #: editor/plugins/item_list_editor_plugin.cpp msgid "Item %d" msgstr "" @@ -3722,6 +3728,10 @@ msgid "Node does not contain geometry (faces)." msgstr "" #: editor/plugins/particles_editor_plugin.cpp +msgid "A processor material of type 'ParticlesMaterial' is required." +msgstr "" + +#: editor/plugins/particles_editor_plugin.cpp msgid "Faces contain no area!" msgstr "" @@ -3734,11 +3744,11 @@ msgid "Generate AABB" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Mesh" +msgid "Create Emission Points From Mesh" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Create Emitter From Node" +msgid "Create Emission Points From Node" msgstr "" #: editor/plugins/particles_editor_plugin.cpp @@ -3750,21 +3760,25 @@ msgid "Create Emitter" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Positions:" +msgid "Emission Points:" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Emission Fill:" +msgid "Surface Points" msgstr "" #: editor/plugins/particles_editor_plugin.cpp -msgid "Surface" +msgid "Surface Points+Normal (Directed)" msgstr "" #: editor/plugins/particles_editor_plugin.cpp msgid "Volume" msgstr "" +#: editor/plugins/particles_editor_plugin.cpp +msgid "Emission Source: " +msgstr "" + #: editor/plugins/path_2d_editor_plugin.cpp msgid "Remove Point from Curve" msgstr "" @@ -6367,6 +6381,26 @@ msgstr "" msgid "just released" msgstr "" +#: platform/javascript/export/export.cpp +msgid "Run in Browser" +msgstr "" + +#: platform/javascript/export/export.cpp +msgid "Run exported HTML in the system's default browser." +msgstr "" + +#: platform/javascript/export/export.cpp +msgid "Could not write file:\n" +msgstr "" + +#: platform/javascript/export/export.cpp +msgid "Could not read file:\n" +msgstr "" + +#: platform/javascript/export/export.cpp +msgid "Could not open template for export:\n" +msgstr "" + #: platform/uwp/export/export.cpp msgid "" "Couldn't read the certificate file. Are the path and password both correct?" diff --git a/main/input_default.cpp b/main/input_default.cpp index 0a5d06c0d3..918f3c150c 100644 --- a/main/input_default.cpp +++ b/main/input_default.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/main/input_default.h b/main/input_default.h index 20ff8b958a..a611047cb3 100644 --- a/main/input_default.h +++ b/main/input_default.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/main/main.cpp b/main/main.cpp index f905e22070..e4e2616698 100644 --- a/main/main.cpp +++ b/main/main.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -94,8 +95,10 @@ static bool init_maximized = false; static bool init_windowed = false; static bool init_fullscreen = false; static bool init_use_custom_pos = false; +#ifdef DEBUG_ENABLED static bool debug_collisions = false; static bool debug_navigation = false; +#endif static int frame_delay = 0; static Vector2 init_custom_pos; static int video_driver_idx = -1; @@ -498,10 +501,12 @@ Error Main::setup(const char *execpath, int argc, char *argv[], bool p_second_ph } else if (I->get() == "-debug" || I->get() == "-d") { debug_mode = "local"; +#ifdef DEBUG_ENABLED } else if (I->get() == "-debugcol" || I->get() == "-dc") { debug_collisions = true; } else if (I->get() == "-debugnav" || I->get() == "-dn") { debug_navigation = true; +#endif } else if (I->get() == "-editor_scene") { if (I->next()) { @@ -1194,12 +1199,15 @@ bool Main::start() { SceneTree *sml = main_loop->cast_to<SceneTree>(); +#ifdef DEBUG_ENABLED if (debug_collisions) { sml->set_debug_collisions_hint(true); } if (debug_navigation) { sml->set_debug_navigation_hint(true); } +#endif + #ifdef TOOLS_ENABLED EditorNode *editor_node = NULL; diff --git a/main/main.h b/main/main.h index dadf45dfde..ca96e397ca 100644 --- a/main/main.h +++ b/main/main.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/main/performance.cpp b/main/performance.cpp index d566bc325f..5788f64239 100644 --- a/main/performance.cpp +++ b/main/performance.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/main/performance.h b/main/performance.h index 03bec11296..75583c6c38 100644 --- a/main/performance.h +++ b/main/performance.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/main/splash.h b/main/splash.h index 401cf5a022..0872be3487 100644 --- a/main/splash.h +++ b/main/splash.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/main/tests/test_containers.cpp b/main/tests/test_containers.cpp index d860d9940e..890599385a 100644 --- a/main/tests/test_containers.cpp +++ b/main/tests/test_containers.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/main/tests/test_containers.h b/main/tests/test_containers.h index 990bf4f819..7b589d4057 100644 --- a/main/tests/test_containers.h +++ b/main/tests/test_containers.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/main/tests/test_gdscript.cpp b/main/tests/test_gdscript.cpp index fcbecc768b..95147d8467 100644 --- a/main/tests/test_gdscript.cpp +++ b/main/tests/test_gdscript.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/main/tests/test_gdscript.h b/main/tests/test_gdscript.h index 3b2a4aa4ec..b4e1665de5 100644 --- a/main/tests/test_gdscript.h +++ b/main/tests/test_gdscript.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/main/tests/test_gui.cpp b/main/tests/test_gui.cpp index a2dd950af6..cf32bf7073 100644 --- a/main/tests/test_gui.cpp +++ b/main/tests/test_gui.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/main/tests/test_gui.h b/main/tests/test_gui.h index 5ffa077dc9..881ff96956 100644 --- a/main/tests/test_gui.h +++ b/main/tests/test_gui.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/main/tests/test_image.cpp b/main/tests/test_image.cpp index c57968ad10..aff3bae417 100644 --- a/main/tests/test_image.cpp +++ b/main/tests/test_image.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/main/tests/test_image.h b/main/tests/test_image.h index f520462429..3b1783ded7 100644 --- a/main/tests/test_image.h +++ b/main/tests/test_image.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/main/tests/test_io.cpp b/main/tests/test_io.cpp index dfc1f05383..6986576081 100644 --- a/main/tests/test_io.cpp +++ b/main/tests/test_io.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/main/tests/test_io.h b/main/tests/test_io.h index 21c1356c35..765c083955 100644 --- a/main/tests/test_io.h +++ b/main/tests/test_io.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/main/tests/test_main.cpp b/main/tests/test_main.cpp index ca039402c1..f3ed4604e1 100644 --- a/main/tests/test_main.cpp +++ b/main/tests/test_main.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/main/tests/test_main.h b/main/tests/test_main.h index 729f2ca1f8..da890a4b96 100644 --- a/main/tests/test_main.h +++ b/main/tests/test_main.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/main/tests/test_math.cpp b/main/tests/test_math.cpp index c82ae1abf5..cb75dcec13 100644 --- a/main/tests/test_math.cpp +++ b/main/tests/test_math.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/main/tests/test_math.h b/main/tests/test_math.h index 239f16f6b0..24fd442dd0 100644 --- a/main/tests/test_math.h +++ b/main/tests/test_math.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/main/tests/test_physics.cpp b/main/tests/test_physics.cpp index 6637139c86..d32756937a 100644 --- a/main/tests/test_physics.cpp +++ b/main/tests/test_physics.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/main/tests/test_physics.h b/main/tests/test_physics.h index a0dc15e421..9c9f2fa883 100644 --- a/main/tests/test_physics.h +++ b/main/tests/test_physics.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/main/tests/test_physics_2d.cpp b/main/tests/test_physics_2d.cpp index 8818c4b595..1476e45fcc 100644 --- a/main/tests/test_physics_2d.cpp +++ b/main/tests/test_physics_2d.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/main/tests/test_physics_2d.h b/main/tests/test_physics_2d.h index 883bf15201..e2022cb1f9 100644 --- a/main/tests/test_physics_2d.h +++ b/main/tests/test_physics_2d.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/main/tests/test_render.cpp b/main/tests/test_render.cpp index 188d736ff6..89bd5db60f 100644 --- a/main/tests/test_render.cpp +++ b/main/tests/test_render.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/main/tests/test_render.h b/main/tests/test_render.h index 1dbf3c7f29..d7849c45ca 100644 --- a/main/tests/test_render.h +++ b/main/tests/test_render.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/main/tests/test_shader_lang.cpp b/main/tests/test_shader_lang.cpp index 4ca09fe656..dc581a71e2 100644 --- a/main/tests/test_shader_lang.cpp +++ b/main/tests/test_shader_lang.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -323,8 +324,10 @@ MainLoop *test() { Set<String> rm; rm.insert("popo"); + Set<String> types; + types.insert("spatial"); - Error err = sl.compile(code, dt, rm); + Error err = sl.compile(code, dt, rm, types); if (err) { diff --git a/main/tests/test_shader_lang.h b/main/tests/test_shader_lang.h index 3a3797ecdc..7d871b72e7 100644 --- a/main/tests/test_shader_lang.h +++ b/main/tests/test_shader_lang.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/main/tests/test_sound.cpp b/main/tests/test_sound.cpp index 9683faf1e5..d8737f6c8d 100644 --- a/main/tests/test_sound.cpp +++ b/main/tests/test_sound.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/main/tests/test_sound.h b/main/tests/test_sound.h index 1246e3b9c5..f55f25fa18 100644 --- a/main/tests/test_sound.h +++ b/main/tests/test_sound.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/main/tests/test_string.cpp b/main/tests/test_string.cpp index 41ec113845..5531b71c96 100644 --- a/main/tests/test_string.cpp +++ b/main/tests/test_string.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/main/tests/test_string.h b/main/tests/test_string.h index c8116a0c53..1060adbc8d 100644 --- a/main/tests/test_string.h +++ b/main/tests/test_string.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/misc/dist/ios_xcode/godot_ios/main.m b/misc/dist/ios_xcode/godot_ios/main.m index 9adee972bf..ad53cf7fea 100644 --- a/misc/dist/ios_xcode/godot_ios/main.m +++ b/misc/dist/ios_xcode/godot_ios/main.m @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/misc/scripts/addheader.py b/misc/scripts/addheader.py index 056e807c81..acb517b5bd 100644 --- a/misc/scripts/addheader.py +++ b/misc/scripts/addheader.py @@ -7,6 +7,7 @@ header = """\ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/dds/register_types.cpp b/modules/dds/register_types.cpp index d0eaf3f995..4a758fe033 100644 --- a/modules/dds/register_types.cpp +++ b/modules/dds/register_types.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/dds/register_types.h b/modules/dds/register_types.h index 69f47006e2..4807c7dd5b 100644 --- a/modules/dds/register_types.h +++ b/modules/dds/register_types.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/dds/texture_loader_dds.cpp b/modules/dds/texture_loader_dds.cpp index ac981d2b1a..f80e6e501e 100644 --- a/modules/dds/texture_loader_dds.cpp +++ b/modules/dds/texture_loader_dds.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/dds/texture_loader_dds.h b/modules/dds/texture_loader_dds.h index c347937cd5..3b36e7f1eb 100644 --- a/modules/dds/texture_loader_dds.h +++ b/modules/dds/texture_loader_dds.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/dlscript/api_generator.cpp b/modules/dlscript/api_generator.cpp index c8e38ca9a3..56e0e45608 100644 --- a/modules/dlscript/api_generator.cpp +++ b/modules/dlscript/api_generator.cpp @@ -112,7 +112,7 @@ List<ClassAPI> generate_c_api_classes() { bool is_reference = false; List<StringName> inheriters; ClassDB::get_inheriters_from_class("Reference", &inheriters); - is_reference = inheriters.find(class_name) < 0; + is_reference = !!inheriters.find(class_name); // @Unclear class_api.memory_own = !class_api.is_singleton && is_reference; } diff --git a/modules/dlscript/dl_script.cpp b/modules/dlscript/dl_script.cpp index 47b54f5f33..fa082d7b94 100644 --- a/modules/dlscript/dl_script.cpp +++ b/modules/dlscript/dl_script.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/dlscript/dl_script.h b/modules/dlscript/dl_script.h index 360f26cb58..630ce21883 100644 --- a/modules/dlscript/dl_script.h +++ b/modules/dlscript/dl_script.h @@ -5,7 +5,8 @@ /* GODOT ENGINE */ /* http://www.godotengine.org */ /*************************************************************************/ -/* Copyright (c) 2007-2016 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/dlscript/godot.cpp b/modules/dlscript/godot.cpp index 9a488ad612..478eb86c08 100644 --- a/modules/dlscript/godot.cpp +++ b/modules/dlscript/godot.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/dlscript/godot.h b/modules/dlscript/godot.h index 75f1f47ed1..4a977ad8cb 100644 --- a/modules/dlscript/godot.h +++ b/modules/dlscript/godot.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/dlscript/register_types.cpp b/modules/dlscript/register_types.cpp index 1da00701a0..2ec6b89cbf 100644 --- a/modules/dlscript/register_types.cpp +++ b/modules/dlscript/register_types.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/dlscript/register_types.h b/modules/dlscript/register_types.h index 90aa1d87fc..1968986718 100644 --- a/modules/dlscript/register_types.h +++ b/modules/dlscript/register_types.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/enet/networked_multiplayer_enet.cpp b/modules/enet/networked_multiplayer_enet.cpp index 13760b33aa..c05c86d9ae 100644 --- a/modules/enet/networked_multiplayer_enet.cpp +++ b/modules/enet/networked_multiplayer_enet.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/enet/networked_multiplayer_enet.h b/modules/enet/networked_multiplayer_enet.h index deddf4ecc7..c20c1af68e 100644 --- a/modules/enet/networked_multiplayer_enet.h +++ b/modules/enet/networked_multiplayer_enet.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/enet/register_types.cpp b/modules/enet/register_types.cpp index 0dea038520..a6e6c87c14 100644 --- a/modules/enet/register_types.cpp +++ b/modules/enet/register_types.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/enet/register_types.h b/modules/enet/register_types.h index 14cb1ba868..9bcb35a92b 100644 --- a/modules/enet/register_types.h +++ b/modules/enet/register_types.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/etc1/image_etc.cpp b/modules/etc1/image_etc.cpp index 642ec027f3..60544594f6 100644 --- a/modules/etc1/image_etc.cpp +++ b/modules/etc1/image_etc.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/etc1/image_etc.h b/modules/etc1/image_etc.h index 18461819d6..69e082bb87 100644 --- a/modules/etc1/image_etc.h +++ b/modules/etc1/image_etc.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/etc1/register_types.cpp b/modules/etc1/register_types.cpp index b3b6419d26..859486222f 100644 --- a/modules/etc1/register_types.cpp +++ b/modules/etc1/register_types.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/etc1/register_types.h b/modules/etc1/register_types.h index fe92496cea..0552b87d65 100644 --- a/modules/etc1/register_types.h +++ b/modules/etc1/register_types.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/etc1/texture_loader_pkm.cpp b/modules/etc1/texture_loader_pkm.cpp index bce10e691e..9817de3a0f 100644 --- a/modules/etc1/texture_loader_pkm.cpp +++ b/modules/etc1/texture_loader_pkm.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/etc1/texture_loader_pkm.h b/modules/etc1/texture_loader_pkm.h index 19d15d21fc..8a0f06a51a 100644 --- a/modules/etc1/texture_loader_pkm.h +++ b/modules/etc1/texture_loader_pkm.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/freetype/register_types.cpp b/modules/freetype/register_types.cpp index 2579a925d4..3f290c2138 100644 --- a/modules/freetype/register_types.cpp +++ b/modules/freetype/register_types.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/freetype/register_types.h b/modules/freetype/register_types.h index 2837898123..c3ba324ed1 100644 --- a/modules/freetype/register_types.h +++ b/modules/freetype/register_types.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/freetype/uwpdef.h b/modules/freetype/uwpdef.h index b4aabb1929..c29b14dd12 100644 --- a/modules/freetype/uwpdef.h +++ b/modules/freetype/uwpdef.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/gdscript/gd_compiler.cpp b/modules/gdscript/gd_compiler.cpp index 245f44887c..12b43d6060 100644 --- a/modules/gdscript/gd_compiler.cpp +++ b/modules/gdscript/gd_compiler.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/gdscript/gd_compiler.h b/modules/gdscript/gd_compiler.h index c84bd97246..b7ff092eba 100644 --- a/modules/gdscript/gd_compiler.h +++ b/modules/gdscript/gd_compiler.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/gdscript/gd_editor.cpp b/modules/gdscript/gd_editor.cpp index 1499f167c4..ae5bb5694c 100644 --- a/modules/gdscript/gd_editor.cpp +++ b/modules/gdscript/gd_editor.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/gdscript/gd_function.cpp b/modules/gdscript/gd_function.cpp index 0e7ba981f4..608256c88a 100644 --- a/modules/gdscript/gd_function.cpp +++ b/modules/gdscript/gd_function.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/gdscript/gd_function.h b/modules/gdscript/gd_function.h index 321b3b6cfa..f0bf33147b 100644 --- a/modules/gdscript/gd_function.h +++ b/modules/gdscript/gd_function.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/gdscript/gd_functions.cpp b/modules/gdscript/gd_functions.cpp index fa92f0a194..a361971ef4 100644 --- a/modules/gdscript/gd_functions.cpp +++ b/modules/gdscript/gd_functions.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/gdscript/gd_functions.h b/modules/gdscript/gd_functions.h index cde1a9210d..4d52abaeab 100644 --- a/modules/gdscript/gd_functions.h +++ b/modules/gdscript/gd_functions.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/gdscript/gd_parser.cpp b/modules/gdscript/gd_parser.cpp index 4c2965c8ec..9033b51d28 100644 --- a/modules/gdscript/gd_parser.cpp +++ b/modules/gdscript/gd_parser.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/gdscript/gd_parser.h b/modules/gdscript/gd_parser.h index 8d2c136818..445ad7361c 100644 --- a/modules/gdscript/gd_parser.h +++ b/modules/gdscript/gd_parser.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/gdscript/gd_script.cpp b/modules/gdscript/gd_script.cpp index 9aafe41a0c..2367f60740 100644 --- a/modules/gdscript/gd_script.cpp +++ b/modules/gdscript/gd_script.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/gdscript/gd_script.h b/modules/gdscript/gd_script.h index d64cc9798d..93f8ee8721 100644 --- a/modules/gdscript/gd_script.h +++ b/modules/gdscript/gd_script.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/gdscript/gd_tokenizer.cpp b/modules/gdscript/gd_tokenizer.cpp index dca34f923e..13674f1f9a 100644 --- a/modules/gdscript/gd_tokenizer.cpp +++ b/modules/gdscript/gd_tokenizer.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/gdscript/gd_tokenizer.h b/modules/gdscript/gd_tokenizer.h index c1ed8ad92e..ea7629b661 100644 --- a/modules/gdscript/gd_tokenizer.h +++ b/modules/gdscript/gd_tokenizer.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/gdscript/register_types.cpp b/modules/gdscript/register_types.cpp index 5acd412f7e..41ea0c2a26 100644 --- a/modules/gdscript/register_types.cpp +++ b/modules/gdscript/register_types.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/gdscript/register_types.h b/modules/gdscript/register_types.h index 5778dfcadc..4e969f5bd4 100644 --- a/modules/gdscript/register_types.h +++ b/modules/gdscript/register_types.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/gridmap/grid_map.cpp b/modules/gridmap/grid_map.cpp index 128592fa29..d1f54e021f 100644 --- a/modules/gridmap/grid_map.cpp +++ b/modules/gridmap/grid_map.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/gridmap/grid_map.h b/modules/gridmap/grid_map.h index 2a0c2b9646..c386e4f66b 100644 --- a/modules/gridmap/grid_map.h +++ b/modules/gridmap/grid_map.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/gridmap/grid_map_editor_plugin.cpp b/modules/gridmap/grid_map_editor_plugin.cpp index a6a3a03503..39fe0a1675 100644 --- a/modules/gridmap/grid_map_editor_plugin.cpp +++ b/modules/gridmap/grid_map_editor_plugin.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -834,9 +835,9 @@ void GridMapEditor::edit(GridMap *p_gridmap) { //update grids indicator_mat.instance(); - indicator_mat->set_flag(FixedSpatialMaterial::FLAG_UNSHADED, true); - indicator_mat->set_flag(FixedSpatialMaterial::FLAG_SRGB_VERTEX_COLOR, true); - indicator_mat->set_flag(FixedSpatialMaterial::FLAG_ALBEDO_FROM_VERTEX_COLOR, true); + indicator_mat->set_flag(SpatialMaterial::FLAG_UNSHADED, true); + indicator_mat->set_flag(SpatialMaterial::FLAG_SRGB_VERTEX_COLOR, true); + indicator_mat->set_flag(SpatialMaterial::FLAG_ALBEDO_FROM_VERTEX_COLOR, true); indicator_mat->set_albedo(Color(0.8, 0.5, 0.1)); Vector<Vector3> grid_points[3]; @@ -1309,9 +1310,9 @@ GridMapEditor::GridMapEditor(EditorNode *p_editor) { inner_mat.instance(); inner_mat->set_albedo(Color(0.7, 0.7, 1.0, 0.3)); - inner_mat->set_flag(FixedSpatialMaterial::FLAG_ONTOP, true); - inner_mat->set_flag(FixedSpatialMaterial::FLAG_UNSHADED, true); - inner_mat->set_feature(FixedSpatialMaterial::FEATURE_TRANSPARENT, true); + inner_mat->set_flag(SpatialMaterial::FLAG_ONTOP, true); + inner_mat->set_flag(SpatialMaterial::FLAG_UNSHADED, true); + inner_mat->set_feature(SpatialMaterial::FEATURE_TRANSPARENT, true); d[VS::ARRAY_VERTEX] = triangles; VisualServer::get_singleton()->mesh_add_surface_from_arrays(selection_mesh, VS::PRIMITIVE_TRIANGLES, d); @@ -1319,10 +1320,10 @@ GridMapEditor::GridMapEditor(EditorNode *p_editor) { outer_mat.instance(); outer_mat->set_albedo(Color(0.7, 0.7, 1.0, 0.3)); - outer_mat->set_flag(FixedSpatialMaterial::FLAG_ONTOP, true); - outer_mat->set_flag(FixedSpatialMaterial::FLAG_UNSHADED, true); + outer_mat->set_flag(SpatialMaterial::FLAG_ONTOP, true); + outer_mat->set_flag(SpatialMaterial::FLAG_UNSHADED, true); outer_mat->set_line_width(3.0); - outer_mat->set_feature(FixedSpatialMaterial::FEATURE_TRANSPARENT, true); + outer_mat->set_feature(SpatialMaterial::FEATURE_TRANSPARENT, true); d[VS::ARRAY_VERTEX] = lines; VisualServer::get_singleton()->mesh_add_surface_from_arrays(selection_mesh, VS::PRIMITIVE_LINES, d); diff --git a/modules/gridmap/grid_map_editor_plugin.h b/modules/gridmap/grid_map_editor_plugin.h index 27a063ee41..d928e6afac 100644 --- a/modules/gridmap/grid_map_editor_plugin.h +++ b/modules/gridmap/grid_map_editor_plugin.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -112,9 +113,9 @@ class GridMapEditor : public VBoxContainer { RID duplicate_mesh; RID duplicate_instance; - Ref<FixedSpatialMaterial> indicator_mat; - Ref<FixedSpatialMaterial> inner_mat; - Ref<FixedSpatialMaterial> outer_mat; + Ref<SpatialMaterial> indicator_mat; + Ref<SpatialMaterial> inner_mat; + Ref<SpatialMaterial> outer_mat; bool updating; diff --git a/modules/gridmap/register_types.cpp b/modules/gridmap/register_types.cpp index 4035caea78..e4def9378f 100644 --- a/modules/gridmap/register_types.cpp +++ b/modules/gridmap/register_types.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/gridmap/register_types.h b/modules/gridmap/register_types.h index cc7c13961a..1978353fc3 100644 --- a/modules/gridmap/register_types.h +++ b/modules/gridmap/register_types.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/jpg/image_loader_jpegd.cpp b/modules/jpg/image_loader_jpegd.cpp index ca928c4fe6..83685d6446 100644 --- a/modules/jpg/image_loader_jpegd.cpp +++ b/modules/jpg/image_loader_jpegd.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/jpg/image_loader_jpegd.h b/modules/jpg/image_loader_jpegd.h index 0803cfba1e..d23e8a7d48 100644 --- a/modules/jpg/image_loader_jpegd.h +++ b/modules/jpg/image_loader_jpegd.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/jpg/register_types.cpp b/modules/jpg/register_types.cpp index ce0330643a..2379bee0df 100644 --- a/modules/jpg/register_types.cpp +++ b/modules/jpg/register_types.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/jpg/register_types.h b/modules/jpg/register_types.h index 62132bf461..c14f860742 100644 --- a/modules/jpg/register_types.h +++ b/modules/jpg/register_types.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/ogg/register_types.cpp b/modules/ogg/register_types.cpp index ed796ec092..9837ae12d9 100644 --- a/modules/ogg/register_types.cpp +++ b/modules/ogg/register_types.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/ogg/register_types.h b/modules/ogg/register_types.h index cc67b4d2f0..dc84227b80 100644 --- a/modules/ogg/register_types.h +++ b/modules/ogg/register_types.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/openssl/register_types.cpp b/modules/openssl/register_types.cpp index 6cc9fa3669..e1ae581caf 100644 --- a/modules/openssl/register_types.cpp +++ b/modules/openssl/register_types.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/openssl/register_types.h b/modules/openssl/register_types.h index 3bcee59bfd..ff39ec8798 100644 --- a/modules/openssl/register_types.h +++ b/modules/openssl/register_types.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/openssl/stream_peer_openssl.cpp b/modules/openssl/stream_peer_openssl.cpp index 3b25b8a50e..8159296b3c 100644 --- a/modules/openssl/stream_peer_openssl.cpp +++ b/modules/openssl/stream_peer_openssl.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/openssl/stream_peer_openssl.h b/modules/openssl/stream_peer_openssl.h index 56b45802df..12262da94a 100644 --- a/modules/openssl/stream_peer_openssl.h +++ b/modules/openssl/stream_peer_openssl.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/opus/audio_stream_opus.cpp b/modules/opus/audio_stream_opus.cpp index 52b055ca82..e361ebf019 100644 --- a/modules/opus/audio_stream_opus.cpp +++ b/modules/opus/audio_stream_opus.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Author: George Marques <george@gmarqu.es> */ /* */ diff --git a/modules/opus/audio_stream_opus.h b/modules/opus/audio_stream_opus.h index f1bee121b2..daf3958c2a 100644 --- a/modules/opus/audio_stream_opus.h +++ b/modules/opus/audio_stream_opus.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Author: George Marques <george@gmarqu.es> */ /* */ diff --git a/modules/opus/register_types.cpp b/modules/opus/register_types.cpp index 8a48c5084e..e8bff58cbb 100644 --- a/modules/opus/register_types.cpp +++ b/modules/opus/register_types.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/opus/register_types.h b/modules/opus/register_types.h index 09181b4f03..4517dc5df7 100644 --- a/modules/opus/register_types.h +++ b/modules/opus/register_types.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/pbm/bitmap_loader_pbm.cpp b/modules/pbm/bitmap_loader_pbm.cpp index 04051fc38f..c8f25ad68c 100644 --- a/modules/pbm/bitmap_loader_pbm.cpp +++ b/modules/pbm/bitmap_loader_pbm.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/pbm/bitmap_loader_pbm.h b/modules/pbm/bitmap_loader_pbm.h index 5e5062f435..7a72edaeee 100644 --- a/modules/pbm/bitmap_loader_pbm.h +++ b/modules/pbm/bitmap_loader_pbm.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/pbm/register_types.cpp b/modules/pbm/register_types.cpp index abfc08c909..c9531ba14f 100644 --- a/modules/pbm/register_types.cpp +++ b/modules/pbm/register_types.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/pbm/register_types.h b/modules/pbm/register_types.h index c9a125083d..3888fd6f77 100644 --- a/modules/pbm/register_types.h +++ b/modules/pbm/register_types.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/pvr/register_types.cpp b/modules/pvr/register_types.cpp index 76fe7970d3..04e20558ce 100644 --- a/modules/pvr/register_types.cpp +++ b/modules/pvr/register_types.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/pvr/register_types.h b/modules/pvr/register_types.h index ac2ab748df..7ff5237c03 100644 --- a/modules/pvr/register_types.h +++ b/modules/pvr/register_types.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/pvr/texture_loader_pvr.cpp b/modules/pvr/texture_loader_pvr.cpp index 0409998408..62cbd9cd8d 100644 --- a/modules/pvr/texture_loader_pvr.cpp +++ b/modules/pvr/texture_loader_pvr.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/pvr/texture_loader_pvr.h b/modules/pvr/texture_loader_pvr.h index 768070ee61..7d60831175 100644 --- a/modules/pvr/texture_loader_pvr.h +++ b/modules/pvr/texture_loader_pvr.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/regex/regex.cpp b/modules/regex/regex.cpp index e8fed382b5..eb9f1d2ab1 100644 --- a/modules/regex/regex.cpp +++ b/modules/regex/regex.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/regex/regex.h b/modules/regex/regex.h index 7aecf9b3ec..106d2649a5 100644 --- a/modules/regex/regex.h +++ b/modules/regex/regex.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/regex/register_types.cpp b/modules/regex/register_types.cpp index 2e24edcd84..eaa8f41e33 100644 --- a/modules/regex/register_types.cpp +++ b/modules/regex/register_types.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/regex/register_types.h b/modules/regex/register_types.h index 5d676b6daa..3b977edd32 100644 --- a/modules/regex/register_types.h +++ b/modules/regex/register_types.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/register_module_types.h b/modules/register_module_types.h index 7d9a130ea1..e30dab2819 100644 --- a/modules/register_module_types.h +++ b/modules/register_module_types.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/squish/image_compress_squish.cpp b/modules/squish/image_compress_squish.cpp index dd46dac234..c6835d4b62 100644 --- a/modules/squish/image_compress_squish.cpp +++ b/modules/squish/image_compress_squish.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/squish/image_compress_squish.h b/modules/squish/image_compress_squish.h index 198889402a..81f57c6822 100644 --- a/modules/squish/image_compress_squish.h +++ b/modules/squish/image_compress_squish.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/squish/register_types.cpp b/modules/squish/register_types.cpp index 995711c758..41341db93b 100644 --- a/modules/squish/register_types.cpp +++ b/modules/squish/register_types.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/squish/register_types.h b/modules/squish/register_types.h index 0db4301997..3bf1b19dec 100644 --- a/modules/squish/register_types.h +++ b/modules/squish/register_types.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/stb_vorbis/audio_stream_ogg_vorbis.cpp b/modules/stb_vorbis/audio_stream_ogg_vorbis.cpp index 1c6e7e461d..227e5e61b6 100644 --- a/modules/stb_vorbis/audio_stream_ogg_vorbis.cpp +++ b/modules/stb_vorbis/audio_stream_ogg_vorbis.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/stb_vorbis/audio_stream_ogg_vorbis.h b/modules/stb_vorbis/audio_stream_ogg_vorbis.h index c32b3e578d..bb895c4dfa 100644 --- a/modules/stb_vorbis/audio_stream_ogg_vorbis.h +++ b/modules/stb_vorbis/audio_stream_ogg_vorbis.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/stb_vorbis/register_types.cpp b/modules/stb_vorbis/register_types.cpp index 36b7ebc11a..726260b45c 100644 --- a/modules/stb_vorbis/register_types.cpp +++ b/modules/stb_vorbis/register_types.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/stb_vorbis/register_types.h b/modules/stb_vorbis/register_types.h index 2824aa9f0c..c17e1eafe9 100644 --- a/modules/stb_vorbis/register_types.h +++ b/modules/stb_vorbis/register_types.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/stb_vorbis/resource_importer_ogg_vorbis.cpp b/modules/stb_vorbis/resource_importer_ogg_vorbis.cpp index 11d8551db5..9a3d5c2651 100644 --- a/modules/stb_vorbis/resource_importer_ogg_vorbis.cpp +++ b/modules/stb_vorbis/resource_importer_ogg_vorbis.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/stb_vorbis/resource_importer_ogg_vorbis.h b/modules/stb_vorbis/resource_importer_ogg_vorbis.h index 2f0fcbe9a1..c588b58fb2 100644 --- a/modules/stb_vorbis/resource_importer_ogg_vorbis.h +++ b/modules/stb_vorbis/resource_importer_ogg_vorbis.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/theora/register_types.cpp b/modules/theora/register_types.cpp index deb54b5d80..1bea5439a3 100644 --- a/modules/theora/register_types.cpp +++ b/modules/theora/register_types.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/theora/register_types.h b/modules/theora/register_types.h index 582aa785c7..cb9f9d1848 100644 --- a/modules/theora/register_types.h +++ b/modules/theora/register_types.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/theora/video_stream_theora.cpp b/modules/theora/video_stream_theora.cpp index c390701adb..28463e2cba 100644 --- a/modules/theora/video_stream_theora.cpp +++ b/modules/theora/video_stream_theora.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/theora/video_stream_theora.h b/modules/theora/video_stream_theora.h index ea568906da..84b665382b 100644 --- a/modules/theora/video_stream_theora.h +++ b/modules/theora/video_stream_theora.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/visual_script/register_types.cpp b/modules/visual_script/register_types.cpp index b05ea716ed..4006ad3428 100644 --- a/modules/visual_script/register_types.cpp +++ b/modules/visual_script/register_types.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/visual_script/register_types.h b/modules/visual_script/register_types.h index f6904420bd..2c0ee56268 100644 --- a/modules/visual_script/register_types.h +++ b/modules/visual_script/register_types.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/visual_script/visual_script.cpp b/modules/visual_script/visual_script.cpp index 610309afca..53521c55a7 100644 --- a/modules/visual_script/visual_script.cpp +++ b/modules/visual_script/visual_script.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/visual_script/visual_script.h b/modules/visual_script/visual_script.h index e3af3f4a1b..ee8ed2c965 100644 --- a/modules/visual_script/visual_script.h +++ b/modules/visual_script/visual_script.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/visual_script/visual_script_builtin_funcs.cpp b/modules/visual_script/visual_script_builtin_funcs.cpp index 378ca06f90..203e0bb483 100644 --- a/modules/visual_script/visual_script_builtin_funcs.cpp +++ b/modules/visual_script/visual_script_builtin_funcs.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/visual_script/visual_script_builtin_funcs.h b/modules/visual_script/visual_script_builtin_funcs.h index 7246239513..8e9c0eca76 100644 --- a/modules/visual_script/visual_script_builtin_funcs.h +++ b/modules/visual_script/visual_script_builtin_funcs.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/visual_script/visual_script_editor.cpp b/modules/visual_script/visual_script_editor.cpp index ae2d4d5df3..ee5bd66aa2 100644 --- a/modules/visual_script/visual_script_editor.cpp +++ b/modules/visual_script/visual_script_editor.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/visual_script/visual_script_editor.h b/modules/visual_script/visual_script_editor.h index 5ece1c9e2c..7322da5cfb 100644 --- a/modules/visual_script/visual_script_editor.h +++ b/modules/visual_script/visual_script_editor.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/visual_script/visual_script_expression.cpp b/modules/visual_script/visual_script_expression.cpp index 96864b4bf6..791b5d99ff 100644 --- a/modules/visual_script/visual_script_expression.cpp +++ b/modules/visual_script/visual_script_expression.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/visual_script/visual_script_expression.h b/modules/visual_script/visual_script_expression.h index 59a7d9fba0..4a9f59ebc3 100644 --- a/modules/visual_script/visual_script_expression.h +++ b/modules/visual_script/visual_script_expression.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/visual_script/visual_script_flow_control.cpp b/modules/visual_script/visual_script_flow_control.cpp index 78847fb588..2deb6064d3 100644 --- a/modules/visual_script/visual_script_flow_control.cpp +++ b/modules/visual_script/visual_script_flow_control.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/visual_script/visual_script_flow_control.h b/modules/visual_script/visual_script_flow_control.h index 1739f67b5b..e3936da9e5 100644 --- a/modules/visual_script/visual_script_flow_control.h +++ b/modules/visual_script/visual_script_flow_control.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/visual_script/visual_script_func_nodes.cpp b/modules/visual_script/visual_script_func_nodes.cpp index 3cd20050ce..84224dfcbe 100644 --- a/modules/visual_script/visual_script_func_nodes.cpp +++ b/modules/visual_script/visual_script_func_nodes.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/visual_script/visual_script_func_nodes.h b/modules/visual_script/visual_script_func_nodes.h index 3f82edc5f0..b56a3c2bcc 100644 --- a/modules/visual_script/visual_script_func_nodes.h +++ b/modules/visual_script/visual_script_func_nodes.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/visual_script/visual_script_nodes.cpp b/modules/visual_script/visual_script_nodes.cpp index 68bd1e6d4c..08f4191d3d 100644 --- a/modules/visual_script/visual_script_nodes.cpp +++ b/modules/visual_script/visual_script_nodes.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/visual_script/visual_script_nodes.h b/modules/visual_script/visual_script_nodes.h index b2fc115660..c0933d1a78 100644 --- a/modules/visual_script/visual_script_nodes.h +++ b/modules/visual_script/visual_script_nodes.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/visual_script/visual_script_yield_nodes.cpp b/modules/visual_script/visual_script_yield_nodes.cpp index 919ced74b9..8f96eb6800 100644 --- a/modules/visual_script/visual_script_yield_nodes.cpp +++ b/modules/visual_script/visual_script_yield_nodes.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/visual_script/visual_script_yield_nodes.h b/modules/visual_script/visual_script_yield_nodes.h index 35f72cdfad..638b7b5b41 100644 --- a/modules/visual_script/visual_script_yield_nodes.h +++ b/modules/visual_script/visual_script_yield_nodes.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/vorbis/audio_stream_ogg_vorbis.cpp b/modules/vorbis/audio_stream_ogg_vorbis.cpp index 88c8ecc0df..1b10637fdc 100644 --- a/modules/vorbis/audio_stream_ogg_vorbis.cpp +++ b/modules/vorbis/audio_stream_ogg_vorbis.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/vorbis/audio_stream_ogg_vorbis.h b/modules/vorbis/audio_stream_ogg_vorbis.h index a13e934f2a..519ceaaea1 100644 --- a/modules/vorbis/audio_stream_ogg_vorbis.h +++ b/modules/vorbis/audio_stream_ogg_vorbis.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/vorbis/register_types.cpp b/modules/vorbis/register_types.cpp index b405acd16b..d9865072b9 100644 --- a/modules/vorbis/register_types.cpp +++ b/modules/vorbis/register_types.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/vorbis/register_types.h b/modules/vorbis/register_types.h index b2adb55acd..e7cde7a66c 100644 --- a/modules/vorbis/register_types.h +++ b/modules/vorbis/register_types.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/webm/register_types.cpp b/modules/webm/register_types.cpp index e50eb337ae..c234f81097 100644 --- a/modules/webm/register_types.cpp +++ b/modules/webm/register_types.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/webm/register_types.h b/modules/webm/register_types.h index 3df0d7bbaa..cf412e601e 100644 --- a/modules/webm/register_types.h +++ b/modules/webm/register_types.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/webm/video_stream_webm.cpp b/modules/webm/video_stream_webm.cpp index 8d6fbdfe75..9d8062d283 100644 --- a/modules/webm/video_stream_webm.cpp +++ b/modules/webm/video_stream_webm.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/webm/video_stream_webm.h b/modules/webm/video_stream_webm.h index 2b62cf48b6..b2e88347aa 100644 --- a/modules/webm/video_stream_webm.h +++ b/modules/webm/video_stream_webm.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/webp/image_loader_webp.cpp b/modules/webp/image_loader_webp.cpp index 829e77873a..39c8f812ac 100644 --- a/modules/webp/image_loader_webp.cpp +++ b/modules/webp/image_loader_webp.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/webp/image_loader_webp.h b/modules/webp/image_loader_webp.h index ccf22bae13..2d0ac796d3 100644 --- a/modules/webp/image_loader_webp.h +++ b/modules/webp/image_loader_webp.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/webp/register_types.cpp b/modules/webp/register_types.cpp index 8a708aae6a..6e29986740 100644 --- a/modules/webp/register_types.cpp +++ b/modules/webp/register_types.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/modules/webp/register_types.h b/modules/webp/register_types.h index ce1f29937b..d0aa148079 100644 --- a/modules/webp/register_types.h +++ b/modules/webp/register_types.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/android/audio_driver_jandroid.cpp b/platform/android/audio_driver_jandroid.cpp index 5e30289310..7b2127a211 100644 --- a/platform/android/audio_driver_jandroid.cpp +++ b/platform/android/audio_driver_jandroid.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/android/audio_driver_jandroid.h b/platform/android/audio_driver_jandroid.h index 4b5131cdc0..e2bb5ede86 100644 --- a/platform/android/audio_driver_jandroid.h +++ b/platform/android/audio_driver_jandroid.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/android/audio_driver_opensl.cpp b/platform/android/audio_driver_opensl.cpp index bba98dd623..acd94d2bdd 100644 --- a/platform/android/audio_driver_opensl.cpp +++ b/platform/android/audio_driver_opensl.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/android/audio_driver_opensl.h b/platform/android/audio_driver_opensl.h index 306589aa23..f6270a3084 100644 --- a/platform/android/audio_driver_opensl.h +++ b/platform/android/audio_driver_opensl.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/android/dir_access_android.cpp b/platform/android/dir_access_android.cpp index 989bd02bd9..67aa7750cd 100644 --- a/platform/android/dir_access_android.cpp +++ b/platform/android/dir_access_android.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/android/dir_access_android.h b/platform/android/dir_access_android.h index 640800584a..32986f524b 100644 --- a/platform/android/dir_access_android.h +++ b/platform/android/dir_access_android.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/android/dir_access_jandroid.cpp b/platform/android/dir_access_jandroid.cpp index 68446302ff..34f4afa331 100644 --- a/platform/android/dir_access_jandroid.cpp +++ b/platform/android/dir_access_jandroid.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/android/dir_access_jandroid.h b/platform/android/dir_access_jandroid.h index 096858ddf7..0175595543 100644 --- a/platform/android/dir_access_jandroid.h +++ b/platform/android/dir_access_jandroid.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/android/export/export.cpp b/platform/android/export/export.cpp index 2342829965..78c28ede50 100644 --- a/platform/android/export/export.cpp +++ b/platform/android/export/export.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/android/export/export.h b/platform/android/export/export.h index 468b484177..e3b0b4aab6 100644 --- a/platform/android/export/export.h +++ b/platform/android/export/export.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/android/file_access_android.cpp b/platform/android/file_access_android.cpp index 4426af4dad..be19f056b0 100644 --- a/platform/android/file_access_android.cpp +++ b/platform/android/file_access_android.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/android/file_access_android.h b/platform/android/file_access_android.h index de131f19bc..0ee8cd7efe 100644 --- a/platform/android/file_access_android.h +++ b/platform/android/file_access_android.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/android/file_access_jandroid.cpp b/platform/android/file_access_jandroid.cpp index b3624e9f26..e20ffd4f8a 100644 --- a/platform/android/file_access_jandroid.cpp +++ b/platform/android/file_access_jandroid.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/android/file_access_jandroid.h b/platform/android/file_access_jandroid.h index b78d5e603c..9bb471246a 100644 --- a/platform/android/file_access_jandroid.h +++ b/platform/android/file_access_jandroid.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/android/globals/global_defaults.cpp b/platform/android/globals/global_defaults.cpp index 60d7d8cb6b..f708ad5dd7 100644 --- a/platform/android/globals/global_defaults.cpp +++ b/platform/android/globals/global_defaults.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/android/globals/global_defaults.h b/platform/android/globals/global_defaults.h index 49d7f6393c..d524b56af6 100644 --- a/platform/android/globals/global_defaults.h +++ b/platform/android/globals/global_defaults.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/android/godot_android.cpp b/platform/android/godot_android.cpp index 9d300940b0..3a21f9212f 100644 --- a/platform/android/godot_android.cpp +++ b/platform/android/godot_android.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/android/java/src/org/godotengine/godot/Dictionary.java b/platform/android/java/src/org/godotengine/godot/Dictionary.java index 72f0b7a60e..b9501e0858 100644 --- a/platform/android/java/src/org/godotengine/godot/Dictionary.java +++ b/platform/android/java/src/org/godotengine/godot/Dictionary.java @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/android/java/src/org/godotengine/godot/Godot.java b/platform/android/java/src/org/godotengine/godot/Godot.java index 0cec0c5773..88928089b6 100644 --- a/platform/android/java/src/org/godotengine/godot/Godot.java +++ b/platform/android/java/src/org/godotengine/godot/Godot.java @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/android/java/src/org/godotengine/godot/GodotDownloaderAlarmReceiver.java b/platform/android/java/src/org/godotengine/godot/GodotDownloaderAlarmReceiver.java index 5a07d680b3..6cdc6be793 100644 --- a/platform/android/java/src/org/godotengine/godot/GodotDownloaderAlarmReceiver.java +++ b/platform/android/java/src/org/godotengine/godot/GodotDownloaderAlarmReceiver.java @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/android/java/src/org/godotengine/godot/GodotDownloaderService.java b/platform/android/java/src/org/godotengine/godot/GodotDownloaderService.java index fba082e80d..38d30c108c 100644 --- a/platform/android/java/src/org/godotengine/godot/GodotDownloaderService.java +++ b/platform/android/java/src/org/godotengine/godot/GodotDownloaderService.java @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/android/java/src/org/godotengine/godot/GodotIO.java b/platform/android/java/src/org/godotengine/godot/GodotIO.java index d6ceef8768..ecb623452c 100644 --- a/platform/android/java/src/org/godotengine/godot/GodotIO.java +++ b/platform/android/java/src/org/godotengine/godot/GodotIO.java @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/android/java/src/org/godotengine/godot/GodotLib.java b/platform/android/java/src/org/godotengine/godot/GodotLib.java index 57856cfd6b..1ed04d9d27 100644 --- a/platform/android/java/src/org/godotengine/godot/GodotLib.java +++ b/platform/android/java/src/org/godotengine/godot/GodotLib.java @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/android/java/src/org/godotengine/godot/GodotPaymentV3.java b/platform/android/java/src/org/godotengine/godot/GodotPaymentV3.java index 6eee8da91b..3cb8fd3da8 100644 --- a/platform/android/java/src/org/godotengine/godot/GodotPaymentV3.java +++ b/platform/android/java/src/org/godotengine/godot/GodotPaymentV3.java @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/android/java/src/org/godotengine/godot/GodotView.java b/platform/android/java/src/org/godotengine/godot/GodotView.java index a209bc7f5b..c6c68c36b0 100644 --- a/platform/android/java/src/org/godotengine/godot/GodotView.java +++ b/platform/android/java/src/org/godotengine/godot/GodotView.java @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/android/java/src/org/godotengine/godot/input/GodotEditText.java b/platform/android/java/src/org/godotengine/godot/input/GodotEditText.java index f0dae03a81..bf5239aa77 100644 --- a/platform/android/java/src/org/godotengine/godot/input/GodotEditText.java +++ b/platform/android/java/src/org/godotengine/godot/input/GodotEditText.java @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/android/java/src/org/godotengine/godot/input/GodotTextInputWrapper.java b/platform/android/java/src/org/godotengine/godot/input/GodotTextInputWrapper.java index 3c8207fae1..1dbcb78ada 100644 --- a/platform/android/java/src/org/godotengine/godot/input/GodotTextInputWrapper.java +++ b/platform/android/java/src/org/godotengine/godot/input/GodotTextInputWrapper.java @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/android/java/src/org/godotengine/godot/payments/ConsumeTask.java b/platform/android/java/src/org/godotengine/godot/payments/ConsumeTask.java index 67293df2a8..c37821ffd9 100644 --- a/platform/android/java/src/org/godotengine/godot/payments/ConsumeTask.java +++ b/platform/android/java/src/org/godotengine/godot/payments/ConsumeTask.java @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/android/java/src/org/godotengine/godot/payments/GenericConsumeTask.java b/platform/android/java/src/org/godotengine/godot/payments/GenericConsumeTask.java index dfa363ed75..72126a8f64 100644 --- a/platform/android/java/src/org/godotengine/godot/payments/GenericConsumeTask.java +++ b/platform/android/java/src/org/godotengine/godot/payments/GenericConsumeTask.java @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/android/java/src/org/godotengine/godot/payments/HandlePurchaseTask.java b/platform/android/java/src/org/godotengine/godot/payments/HandlePurchaseTask.java index 3850453a77..e223bbb8c0 100644 --- a/platform/android/java/src/org/godotengine/godot/payments/HandlePurchaseTask.java +++ b/platform/android/java/src/org/godotengine/godot/payments/HandlePurchaseTask.java @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/android/java/src/org/godotengine/godot/payments/PaymentsCache.java b/platform/android/java/src/org/godotengine/godot/payments/PaymentsCache.java index 4678dae1b3..fa5564a3f4 100644 --- a/platform/android/java/src/org/godotengine/godot/payments/PaymentsCache.java +++ b/platform/android/java/src/org/godotengine/godot/payments/PaymentsCache.java @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/android/java/src/org/godotengine/godot/payments/PaymentsManager.java b/platform/android/java/src/org/godotengine/godot/payments/PaymentsManager.java index 73d1cc3bc8..044efba1f3 100644 --- a/platform/android/java/src/org/godotengine/godot/payments/PaymentsManager.java +++ b/platform/android/java/src/org/godotengine/godot/payments/PaymentsManager.java @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/android/java/src/org/godotengine/godot/payments/PurchaseTask.java b/platform/android/java/src/org/godotengine/godot/payments/PurchaseTask.java index 5ad96b35ee..81352b0cf4 100644 --- a/platform/android/java/src/org/godotengine/godot/payments/PurchaseTask.java +++ b/platform/android/java/src/org/godotengine/godot/payments/PurchaseTask.java @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/android/java/src/org/godotengine/godot/payments/ReleaseAllConsumablesTask.java b/platform/android/java/src/org/godotengine/godot/payments/ReleaseAllConsumablesTask.java index 60a43a9070..9d40371b9b 100644 --- a/platform/android/java/src/org/godotengine/godot/payments/ReleaseAllConsumablesTask.java +++ b/platform/android/java/src/org/godotengine/godot/payments/ReleaseAllConsumablesTask.java @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/android/java/src/org/godotengine/godot/payments/ValidateTask.java b/platform/android/java/src/org/godotengine/godot/payments/ValidateTask.java index f09bcbf9a4..09f80df403 100644 --- a/platform/android/java/src/org/godotengine/godot/payments/ValidateTask.java +++ b/platform/android/java/src/org/godotengine/godot/payments/ValidateTask.java @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/android/java/src/org/godotengine/godot/utils/Crypt.java b/platform/android/java/src/org/godotengine/godot/utils/Crypt.java index f8936bef2b..02a2fba854 100644 --- a/platform/android/java/src/org/godotengine/godot/utils/Crypt.java +++ b/platform/android/java/src/org/godotengine/godot/utils/Crypt.java @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/android/java/src/org/godotengine/godot/utils/CustomSSLSocketFactory.java b/platform/android/java/src/org/godotengine/godot/utils/CustomSSLSocketFactory.java index 823c75d186..7881754fb2 100644 --- a/platform/android/java/src/org/godotengine/godot/utils/CustomSSLSocketFactory.java +++ b/platform/android/java/src/org/godotengine/godot/utils/CustomSSLSocketFactory.java @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/android/java/src/org/godotengine/godot/utils/HttpRequester.java b/platform/android/java/src/org/godotengine/godot/utils/HttpRequester.java index faefbbd2c6..b314fb721b 100644 --- a/platform/android/java/src/org/godotengine/godot/utils/HttpRequester.java +++ b/platform/android/java/src/org/godotengine/godot/utils/HttpRequester.java @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/android/java/src/org/godotengine/godot/utils/RequestParams.java b/platform/android/java/src/org/godotengine/godot/utils/RequestParams.java index bb00f1f468..41d26ba70f 100644 --- a/platform/android/java/src/org/godotengine/godot/utils/RequestParams.java +++ b/platform/android/java/src/org/godotengine/godot/utils/RequestParams.java @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/android/java_class_wrapper.cpp b/platform/android/java_class_wrapper.cpp index eb208f0ee0..56a27fa0e0 100644 --- a/platform/android/java_class_wrapper.cpp +++ b/platform/android/java_class_wrapper.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/android/java_class_wrapper.h b/platform/android/java_class_wrapper.h index 12ef92c45b..f990708bdf 100644 --- a/platform/android/java_class_wrapper.h +++ b/platform/android/java_class_wrapper.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/android/java_glue.cpp b/platform/android/java_glue.cpp index 06ef581813..6882dad4f0 100644 --- a/platform/android/java_glue.cpp +++ b/platform/android/java_glue.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/android/java_glue.h b/platform/android/java_glue.h index 51a2031867..f400f41e28 100644 --- a/platform/android/java_glue.h +++ b/platform/android/java_glue.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/android/os_android.cpp b/platform/android/os_android.cpp index 77536448e4..0cdc2bbddf 100644 --- a/platform/android/os_android.cpp +++ b/platform/android/os_android.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/android/os_android.h b/platform/android/os_android.h index 28abbf934d..87ab0bb757 100644 --- a/platform/android/os_android.h +++ b/platform/android/os_android.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/android/platform_config.h b/platform/android/platform_config.h index cdef185ff0..48bcadcc29 100644 --- a/platform/android/platform_config.h +++ b/platform/android/platform_config.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/android/power_android.cpp b/platform/android/power_android.cpp index aa37dc51e2..57977dd4b9 100644 --- a/platform/android/power_android.cpp +++ b/platform/android/power_android.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/android/power_android.h b/platform/android/power_android.h index df4983bbf3..328a4506a1 100644 --- a/platform/android/power_android.h +++ b/platform/android/power_android.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/android/thread_jandroid.cpp b/platform/android/thread_jandroid.cpp index 854cdb1e34..401f3cd73b 100644 --- a/platform/android/thread_jandroid.cpp +++ b/platform/android/thread_jandroid.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/android/thread_jandroid.h b/platform/android/thread_jandroid.h index a8d8a4d8b1..6174066968 100644 --- a/platform/android/thread_jandroid.h +++ b/platform/android/thread_jandroid.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/bb10/audio_driver_bb10.cpp b/platform/bb10/audio_driver_bb10.cpp index 5416fc5f02..5658dc5334 100644 --- a/platform/bb10/audio_driver_bb10.cpp +++ b/platform/bb10/audio_driver_bb10.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/bb10/audio_driver_bb10.h b/platform/bb10/audio_driver_bb10.h index 2a0ed9c545..c5d64236b8 100644 --- a/platform/bb10/audio_driver_bb10.h +++ b/platform/bb10/audio_driver_bb10.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/bb10/export/export.cpp b/platform/bb10/export/export.cpp index c958bf7ff4..b620cea230 100644 --- a/platform/bb10/export/export.cpp +++ b/platform/bb10/export/export.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/bb10/export/export.h b/platform/bb10/export/export.h index d8407c4152..7939754bfa 100644 --- a/platform/bb10/export/export.h +++ b/platform/bb10/export/export.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/bb10/godot_bb10.cpp b/platform/bb10/godot_bb10.cpp index e1826450a6..4d382ddd15 100644 --- a/platform/bb10/godot_bb10.cpp +++ b/platform/bb10/godot_bb10.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/bb10/os_bb10.cpp b/platform/bb10/os_bb10.cpp index c8d5b82a98..0bfeff80da 100644 --- a/platform/bb10/os_bb10.cpp +++ b/platform/bb10/os_bb10.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/bb10/os_bb10.h b/platform/bb10/os_bb10.h index 30978d2f60..42781c85d8 100644 --- a/platform/bb10/os_bb10.h +++ b/platform/bb10/os_bb10.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/bb10/payment_service.cpp b/platform/bb10/payment_service.cpp index e78326e8b1..353845583f 100644 --- a/platform/bb10/payment_service.cpp +++ b/platform/bb10/payment_service.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/bb10/payment_service.h b/platform/bb10/payment_service.h index d5b4cc3d60..64dc982ab2 100644 --- a/platform/bb10/payment_service.h +++ b/platform/bb10/payment_service.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/bb10/platform_config.h b/platform/bb10/platform_config.h index cdef185ff0..48bcadcc29 100644 --- a/platform/bb10/platform_config.h +++ b/platform/bb10/platform_config.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/bb10/power_bb10.cpp b/platform/bb10/power_bb10.cpp index 29c1fe370d..a683b61376 100644 --- a/platform/bb10/power_bb10.cpp +++ b/platform/bb10/power_bb10.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/bb10/power_bb10.h b/platform/bb10/power_bb10.h index 6c13f6e997..c5c18d5f69 100644 --- a/platform/bb10/power_bb10.h +++ b/platform/bb10/power_bb10.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/haiku/audio_driver_media_kit.cpp b/platform/haiku/audio_driver_media_kit.cpp index 0f969d25ab..9c4f6d3aba 100644 --- a/platform/haiku/audio_driver_media_kit.cpp +++ b/platform/haiku/audio_driver_media_kit.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/haiku/audio_driver_media_kit.h b/platform/haiku/audio_driver_media_kit.h index e9282c8471..2cceb279e8 100644 --- a/platform/haiku/audio_driver_media_kit.h +++ b/platform/haiku/audio_driver_media_kit.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/haiku/context_gl_haiku.cpp b/platform/haiku/context_gl_haiku.cpp index f345928005..eb5e60152f 100644 --- a/platform/haiku/context_gl_haiku.cpp +++ b/platform/haiku/context_gl_haiku.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/haiku/context_gl_haiku.h b/platform/haiku/context_gl_haiku.h index c0030fad41..074b4bf0d1 100644 --- a/platform/haiku/context_gl_haiku.h +++ b/platform/haiku/context_gl_haiku.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/haiku/godot_haiku.cpp b/platform/haiku/godot_haiku.cpp index 47cfbe55d7..3a8206d9d5 100644 --- a/platform/haiku/godot_haiku.cpp +++ b/platform/haiku/godot_haiku.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/haiku/haiku_application.cpp b/platform/haiku/haiku_application.cpp index f675d4216d..1f0c9fdcbf 100644 --- a/platform/haiku/haiku_application.cpp +++ b/platform/haiku/haiku_application.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/haiku/haiku_application.h b/platform/haiku/haiku_application.h index 7fbce5dcbc..6e690d4ab8 100644 --- a/platform/haiku/haiku_application.h +++ b/platform/haiku/haiku_application.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/haiku/haiku_direct_window.cpp b/platform/haiku/haiku_direct_window.cpp index f64fb706c1..bb2495d99c 100644 --- a/platform/haiku/haiku_direct_window.cpp +++ b/platform/haiku/haiku_direct_window.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/haiku/haiku_direct_window.h b/platform/haiku/haiku_direct_window.h index d4fd05e45f..3671c3c9cb 100644 --- a/platform/haiku/haiku_direct_window.h +++ b/platform/haiku/haiku_direct_window.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/haiku/haiku_gl_view.cpp b/platform/haiku/haiku_gl_view.cpp index ded15e12a7..dd568f281e 100644 --- a/platform/haiku/haiku_gl_view.cpp +++ b/platform/haiku/haiku_gl_view.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/haiku/haiku_gl_view.h b/platform/haiku/haiku_gl_view.h index f06bc64794..14e2889d6c 100644 --- a/platform/haiku/haiku_gl_view.h +++ b/platform/haiku/haiku_gl_view.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/haiku/key_mapping_haiku.cpp b/platform/haiku/key_mapping_haiku.cpp index 1bc3467914..9df7b2f047 100644 --- a/platform/haiku/key_mapping_haiku.cpp +++ b/platform/haiku/key_mapping_haiku.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/haiku/key_mapping_haiku.h b/platform/haiku/key_mapping_haiku.h index 0f2e2e64bd..8d09203737 100644 --- a/platform/haiku/key_mapping_haiku.h +++ b/platform/haiku/key_mapping_haiku.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/haiku/os_haiku.cpp b/platform/haiku/os_haiku.cpp index 0853fac393..38aa6ae74d 100644 --- a/platform/haiku/os_haiku.cpp +++ b/platform/haiku/os_haiku.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/haiku/os_haiku.h b/platform/haiku/os_haiku.h index 827814c7e9..1d6c31e39d 100644 --- a/platform/haiku/os_haiku.h +++ b/platform/haiku/os_haiku.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/haiku/platform_config.h b/platform/haiku/platform_config.h index a3aa918ba8..e59b9bac80 100644 --- a/platform/haiku/platform_config.h +++ b/platform/haiku/platform_config.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/haiku/power_haiku.cpp b/platform/haiku/power_haiku.cpp index d70aad9d5f..b0d01df982 100644 --- a/platform/haiku/power_haiku.cpp +++ b/platform/haiku/power_haiku.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/haiku/power_haiku.h b/platform/haiku/power_haiku.h index 8e7b050cd6..711ad86a02 100644 --- a/platform/haiku/power_haiku.h +++ b/platform/haiku/power_haiku.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/iphone/app_delegate.h b/platform/iphone/app_delegate.h index eaa74946ee..f357427144 100644 --- a/platform/iphone/app_delegate.h +++ b/platform/iphone/app_delegate.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/iphone/app_delegate.mm b/platform/iphone/app_delegate.mm index e82649692c..4c36942ff8 100644 --- a/platform/iphone/app_delegate.mm +++ b/platform/iphone/app_delegate.mm @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/iphone/audio_driver_iphone.cpp b/platform/iphone/audio_driver_iphone.cpp index eff91fa40f..dea1ce405d 100644 --- a/platform/iphone/audio_driver_iphone.cpp +++ b/platform/iphone/audio_driver_iphone.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/iphone/audio_driver_iphone.h b/platform/iphone/audio_driver_iphone.h index 8a0d92e070..c620e9068c 100644 --- a/platform/iphone/audio_driver_iphone.h +++ b/platform/iphone/audio_driver_iphone.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/iphone/game_center.h b/platform/iphone/game_center.h index a732a97a4c..cda6f78a1f 100644 --- a/platform/iphone/game_center.h +++ b/platform/iphone/game_center.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/iphone/game_center.mm b/platform/iphone/game_center.mm index 4cfa64ae4b..2593134512 100644 --- a/platform/iphone/game_center.mm +++ b/platform/iphone/game_center.mm @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/iphone/gl_view.h b/platform/iphone/gl_view.h index 555e34a895..14e9a66a4a 100644 --- a/platform/iphone/gl_view.h +++ b/platform/iphone/gl_view.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/iphone/gl_view.mm b/platform/iphone/gl_view.mm index 6850b6be38..735235e73d 100755 --- a/platform/iphone/gl_view.mm +++ b/platform/iphone/gl_view.mm @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/iphone/globals/global_defaults.cpp b/platform/iphone/globals/global_defaults.cpp index b3067dc0c4..b320be2f85 100644 --- a/platform/iphone/globals/global_defaults.cpp +++ b/platform/iphone/globals/global_defaults.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/iphone/globals/global_defaults.h b/platform/iphone/globals/global_defaults.h index 1432b74425..6fe1027287 100644 --- a/platform/iphone/globals/global_defaults.h +++ b/platform/iphone/globals/global_defaults.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/iphone/godot_iphone.cpp b/platform/iphone/godot_iphone.cpp index 626c78fdf4..4d34ebedf9 100644 --- a/platform/iphone/godot_iphone.cpp +++ b/platform/iphone/godot_iphone.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/iphone/icloud.h b/platform/iphone/icloud.h index 743a9a5de3..67d12a990a 100644 --- a/platform/iphone/icloud.h +++ b/platform/iphone/icloud.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/iphone/icloud.mm b/platform/iphone/icloud.mm index a9b23baaeb..180e38ba81 100644 --- a/platform/iphone/icloud.mm +++ b/platform/iphone/icloud.mm @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/iphone/in_app_store.h b/platform/iphone/in_app_store.h index b2ed6f70e4..153c46bd7b 100644 --- a/platform/iphone/in_app_store.h +++ b/platform/iphone/in_app_store.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/iphone/in_app_store.mm b/platform/iphone/in_app_store.mm index b63d7b42ab..6f4d0f927c 100644 --- a/platform/iphone/in_app_store.mm +++ b/platform/iphone/in_app_store.mm @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/iphone/ios.h b/platform/iphone/ios.h index e5baf8f4d2..5329d4f02a 100644 --- a/platform/iphone/ios.h +++ b/platform/iphone/ios.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/iphone/ios.mm b/platform/iphone/ios.mm index 4aca85dafc..fe8412d5fd 100644 --- a/platform/iphone/ios.mm +++ b/platform/iphone/ios.mm @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/iphone/main.m b/platform/iphone/main.m index 02a45737c5..43c3c8c8cc 100644 --- a/platform/iphone/main.m +++ b/platform/iphone/main.m @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/iphone/os_iphone.cpp b/platform/iphone/os_iphone.cpp index 576518011f..0f693cd2cc 100644 --- a/platform/iphone/os_iphone.cpp +++ b/platform/iphone/os_iphone.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/iphone/os_iphone.h b/platform/iphone/os_iphone.h index 7557453a02..b5fe93240a 100644 --- a/platform/iphone/os_iphone.h +++ b/platform/iphone/os_iphone.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/iphone/platform_config.h b/platform/iphone/platform_config.h index 64e9388910..7e4b533254 100644 --- a/platform/iphone/platform_config.h +++ b/platform/iphone/platform_config.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/iphone/platform_refcount.h b/platform/iphone/platform_refcount.h index 6cfdc49369..c02e709ea1 100644 --- a/platform/iphone/platform_refcount.h +++ b/platform/iphone/platform_refcount.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/iphone/power_iphone.cpp b/platform/iphone/power_iphone.cpp index 7b1f9246f4..5192f8e593 100644 --- a/platform/iphone/power_iphone.cpp +++ b/platform/iphone/power_iphone.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/iphone/power_iphone.h b/platform/iphone/power_iphone.h index 8890c33e74..174ee6c63b 100644 --- a/platform/iphone/power_iphone.h +++ b/platform/iphone/power_iphone.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/iphone/rasterizer_iphone.cpp b/platform/iphone/rasterizer_iphone.cpp index 14288e4ba0..ff13ff1b89 100644 --- a/platform/iphone/rasterizer_iphone.cpp +++ b/platform/iphone/rasterizer_iphone.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -447,7 +448,7 @@ RID RasterizerIPhone::material_create() { return material_owner.make_rid(memnew(Material)); } -void RasterizerIPhone::fixed_material_set_parameter(RID p_material, VS::FixedSpatialMaterialParam p_parameter, const Variant &p_value) { +void RasterizerIPhone::fixed_material_set_parameter(RID p_material, VS::SpatialMaterialParam p_parameter, const Variant &p_value) { Material *m = material_owner.get(p_material); ERR_FAIL_COND(!m); @@ -455,7 +456,7 @@ void RasterizerIPhone::fixed_material_set_parameter(RID p_material, VS::FixedSpa m->parameters[p_parameter] = p_value; } -Variant RasterizerIPhone::fixed_material_get_parameter(RID p_material, VS::FixedSpatialMaterialParam p_parameter) const { +Variant RasterizerIPhone::fixed_material_get_parameter(RID p_material, VS::SpatialMaterialParam p_parameter) const { Material *m = material_owner.get(p_material); ERR_FAIL_COND_V(!m, Variant()); @@ -464,7 +465,7 @@ Variant RasterizerIPhone::fixed_material_get_parameter(RID p_material, VS::Fixed return m->parameters[p_parameter]; } -void RasterizerIPhone::fixed_material_set_texture(RID p_material, VS::FixedSpatialMaterialParam p_parameter, RID p_texture) { +void RasterizerIPhone::fixed_material_set_texture(RID p_material, VS::SpatialMaterialParam p_parameter, RID p_texture) { Material *m = material_owner.get(p_material); ERR_FAIL_COND(!m); @@ -472,7 +473,7 @@ void RasterizerIPhone::fixed_material_set_texture(RID p_material, VS::FixedSpati m->textures[p_parameter] = p_texture; } -RID RasterizerIPhone::fixed_material_get_texture(RID p_material, VS::FixedSpatialMaterialParam p_parameter) const { +RID RasterizerIPhone::fixed_material_get_texture(RID p_material, VS::SpatialMaterialParam p_parameter) const { Material *m = material_owner.get(p_material); ERR_FAIL_COND_V(!m, RID()); @@ -496,7 +497,7 @@ VS::MaterialBlendMode RasterizerIPhone::fixed_material_get_detail_blend_mode(RID return m->detail_blend_mode; } -void RasterizerIPhone::fixed_material_set_texcoord_mode(RID p_material, VS::FixedSpatialMaterialParam p_parameter, VS::FixedSpatialMaterialTexCoordMode p_mode) { +void RasterizerIPhone::fixed_material_set_texcoord_mode(RID p_material, VS::SpatialMaterialParam p_parameter, VS::SpatialMaterialTexCoordMode p_mode) { Material *m = material_owner.get(p_material); ERR_FAIL_COND(!m); @@ -504,7 +505,7 @@ void RasterizerIPhone::fixed_material_set_texcoord_mode(RID p_material, VS::Fixe m->texcoord_mode[p_parameter] = p_mode; } -VS::FixedSpatialMaterialTexCoordMode RasterizerIPhone::fixed_material_get_texcoord_mode(RID p_material, VS::FixedSpatialMaterialParam p_parameter) const { +VS::SpatialMaterialTexCoordMode RasterizerIPhone::fixed_material_get_texcoord_mode(RID p_material, VS::SpatialMaterialParam p_parameter) const { Material *m = material_owner.get(p_material); ERR_FAIL_COND_V(!m, VS::FIXED_MATERIAL_TEXCOORD_TEXGEN); @@ -513,7 +514,7 @@ VS::FixedSpatialMaterialTexCoordMode RasterizerIPhone::fixed_material_get_texcoo return m->texcoord_mode[p_parameter]; // for now } -void RasterizerIPhone::fixed_material_set_texgen_mode(RID p_material, VS::FixedSpatialMaterialTexGenMode p_mode) { +void RasterizerIPhone::fixed_material_set_texgen_mode(RID p_material, VS::SpatialMaterialTexGenMode p_mode) { Material *m = material_owner.get(p_material); ERR_FAIL_COND(!m); @@ -521,7 +522,7 @@ void RasterizerIPhone::fixed_material_set_texgen_mode(RID p_material, VS::FixedS m->texgen_mode = p_mode; }; -VS::FixedSpatialMaterialTexGenMode RasterizerIPhone::fixed_material_get_texgen_mode(RID p_material) const { +VS::SpatialMaterialTexGenMode RasterizerIPhone::fixed_material_get_texgen_mode(RID p_material) const { Material *m = material_owner.get(p_material); ERR_FAIL_COND_V(!m, VS::FIXED_MATERIAL_TEXGEN_SPHERE); diff --git a/platform/iphone/rasterizer_iphone.h b/platform/iphone/rasterizer_iphone.h index 02cb985dc8..f886738da9 100644 --- a/platform/iphone/rasterizer_iphone.h +++ b/platform/iphone/rasterizer_iphone.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -100,11 +101,11 @@ class RasterizerIPhone : public Rasterizer { RID textures[VisualServer::FIXED_MATERIAL_PARAM_MAX]; Transform uv_transform; - VS::FixedSpatialMaterialTexCoordMode texcoord_mode[VisualServer::FIXED_MATERIAL_PARAM_MAX]; + VS::SpatialMaterialTexCoordMode texcoord_mode[VisualServer::FIXED_MATERIAL_PARAM_MAX]; VS::MaterialBlendMode detail_blend_mode; - VS::FixedSpatialMaterialTexGenMode texgen_mode; + VS::SpatialMaterialTexGenMode texgen_mode; Material() { @@ -614,20 +615,20 @@ public: virtual RID material_create(); - virtual void fixed_material_set_parameter(RID p_material, VS::FixedSpatialMaterialParam p_parameter, const Variant &p_value); - virtual Variant fixed_material_get_parameter(RID p_material, VS::FixedSpatialMaterialParam p_parameter) const; + virtual void fixed_material_set_parameter(RID p_material, VS::SpatialMaterialParam p_parameter, const Variant &p_value); + virtual Variant fixed_material_get_parameter(RID p_material, VS::SpatialMaterialParam p_parameter) const; - virtual void fixed_material_set_texture(RID p_material, VS::FixedSpatialMaterialParam p_parameter, RID p_texture); - virtual RID fixed_material_get_texture(RID p_material, VS::FixedSpatialMaterialParam p_parameter) const; + virtual void fixed_material_set_texture(RID p_material, VS::SpatialMaterialParam p_parameter, RID p_texture); + virtual RID fixed_material_get_texture(RID p_material, VS::SpatialMaterialParam p_parameter) const; virtual void fixed_material_set_detail_blend_mode(RID p_material, VS::MaterialBlendMode p_mode); virtual VS::MaterialBlendMode fixed_material_get_detail_blend_mode(RID p_material) const; - virtual void fixed_material_set_texgen_mode(RID p_material, VS::FixedSpatialMaterialTexGenMode p_mode); - virtual VS::FixedSpatialMaterialTexGenMode fixed_material_get_texgen_mode(RID p_material) const; + virtual void fixed_material_set_texgen_mode(RID p_material, VS::SpatialMaterialTexGenMode p_mode); + virtual VS::SpatialMaterialTexGenMode fixed_material_get_texgen_mode(RID p_material) const; - virtual void fixed_material_set_texcoord_mode(RID p_material, VS::FixedSpatialMaterialParam p_parameter, VS::FixedSpatialMaterialTexCoordMode p_mode); - virtual VS::FixedSpatialMaterialTexCoordMode fixed_material_get_texcoord_mode(RID p_material, VS::FixedSpatialMaterialParam p_parameter) const; + virtual void fixed_material_set_texcoord_mode(RID p_material, VS::SpatialMaterialParam p_parameter, VS::SpatialMaterialTexCoordMode p_mode); + virtual VS::SpatialMaterialTexCoordMode fixed_material_get_texcoord_mode(RID p_material, VS::SpatialMaterialParam p_parameter) const; virtual void fixed_material_set_uv_transform(RID p_material, const Transform &p_transform); virtual Transform fixed_material_get_uv_transform(RID p_material) const; diff --git a/platform/iphone/sem_iphone.cpp b/platform/iphone/sem_iphone.cpp index e74c696607..4614b201a4 100644 --- a/platform/iphone/sem_iphone.cpp +++ b/platform/iphone/sem_iphone.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/iphone/sem_iphone.h b/platform/iphone/sem_iphone.h index 8a87ab47ca..90db0fb74d 100644 --- a/platform/iphone/sem_iphone.h +++ b/platform/iphone/sem_iphone.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/iphone/view_controller.h b/platform/iphone/view_controller.h index ca05818040..57ed576c25 100644 --- a/platform/iphone/view_controller.h +++ b/platform/iphone/view_controller.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/iphone/view_controller.mm b/platform/iphone/view_controller.mm index 8b3dc7c984..773ca62d2e 100644 --- a/platform/iphone/view_controller.mm +++ b/platform/iphone/view_controller.mm @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/javascript/audio_driver_javascript.cpp b/platform/javascript/audio_driver_javascript.cpp index 80bc7047ae..3e37ec293e 100644 --- a/platform/javascript/audio_driver_javascript.cpp +++ b/platform/javascript/audio_driver_javascript.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/javascript/audio_driver_javascript.h b/platform/javascript/audio_driver_javascript.h index ca5dba7e5c..7ccaff0f43 100644 --- a/platform/javascript/audio_driver_javascript.h +++ b/platform/javascript/audio_driver_javascript.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/javascript/audio_server_javascript.cpp b/platform/javascript/audio_server_javascript.cpp index 7dfd562402..f9b7890e12 100644 --- a/platform/javascript/audio_server_javascript.cpp +++ b/platform/javascript/audio_server_javascript.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/javascript/audio_server_javascript.h b/platform/javascript/audio_server_javascript.h index 2f48e7e79e..58c240f793 100644 --- a/platform/javascript/audio_server_javascript.h +++ b/platform/javascript/audio_server_javascript.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/javascript/dom_keys.h b/platform/javascript/dom_keys.h index 53a2705577..979731d157 100644 --- a/platform/javascript/dom_keys.h +++ b/platform/javascript/dom_keys.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/javascript/export/export.cpp b/platform/javascript/export/export.cpp index 9a1e6672cb..1a3c5f3e8f 100644 --- a/platform/javascript/export/export.cpp +++ b/platform/javascript/export/export.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/javascript/export/export.h b/platform/javascript/export/export.h index 59c0a67e6d..910c4119f7 100644 --- a/platform/javascript/export/export.h +++ b/platform/javascript/export/export.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/javascript/javascript_eval.cpp b/platform/javascript/javascript_eval.cpp index 897c2276bb..c9312e8d30 100644 --- a/platform/javascript/javascript_eval.cpp +++ b/platform/javascript/javascript_eval.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/javascript/javascript_eval.h b/platform/javascript/javascript_eval.h index 0050b855d8..4a732cec76 100644 --- a/platform/javascript/javascript_eval.h +++ b/platform/javascript/javascript_eval.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/javascript/javascript_main.cpp b/platform/javascript/javascript_main.cpp index a0fb9b83e2..ff29c21b1c 100644 --- a/platform/javascript/javascript_main.cpp +++ b/platform/javascript/javascript_main.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/javascript/os_javascript.cpp b/platform/javascript/os_javascript.cpp index bcb7365204..84312fd059 100644 --- a/platform/javascript/os_javascript.cpp +++ b/platform/javascript/os_javascript.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/javascript/os_javascript.h b/platform/javascript/os_javascript.h index 1bf001e46f..fe0be859e2 100644 --- a/platform/javascript/os_javascript.h +++ b/platform/javascript/os_javascript.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/javascript/platform_config.h b/platform/javascript/platform_config.h index cdef185ff0..48bcadcc29 100644 --- a/platform/javascript/platform_config.h +++ b/platform/javascript/platform_config.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/javascript/power_javascript.cpp b/platform/javascript/power_javascript.cpp index 24158a34fe..bd4502fc2a 100644 --- a/platform/javascript/power_javascript.cpp +++ b/platform/javascript/power_javascript.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/javascript/power_javascript.h b/platform/javascript/power_javascript.h index 78a896c430..c7b853ce11 100644 --- a/platform/javascript/power_javascript.h +++ b/platform/javascript/power_javascript.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/osx/audio_driver_osx.cpp b/platform/osx/audio_driver_osx.cpp index 7ef0669656..7469d52976 100644 --- a/platform/osx/audio_driver_osx.cpp +++ b/platform/osx/audio_driver_osx.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/osx/audio_driver_osx.h b/platform/osx/audio_driver_osx.h index b030570a6e..9b48dab405 100644 --- a/platform/osx/audio_driver_osx.h +++ b/platform/osx/audio_driver_osx.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/osx/context_gl_osx.cpp b/platform/osx/context_gl_osx.cpp index 0737e3d3c6..1377d829b0 100644 --- a/platform/osx/context_gl_osx.cpp +++ b/platform/osx/context_gl_osx.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/osx/context_gl_osx.h b/platform/osx/context_gl_osx.h index 66da8b1ecf..d0e2a2c0d3 100644 --- a/platform/osx/context_gl_osx.h +++ b/platform/osx/context_gl_osx.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/osx/dir_access_osx.h b/platform/osx/dir_access_osx.h index 56a8e057dd..6dcff3898c 100644 --- a/platform/osx/dir_access_osx.h +++ b/platform/osx/dir_access_osx.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/osx/dir_access_osx.mm b/platform/osx/dir_access_osx.mm index 476da2635e..931629e5c1 100644 --- a/platform/osx/dir_access_osx.mm +++ b/platform/osx/dir_access_osx.mm @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/osx/export/export.cpp b/platform/osx/export/export.cpp index ba4ef0300c..2033bc76a1 100644 --- a/platform/osx/export/export.cpp +++ b/platform/osx/export/export.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/osx/export/export.h b/platform/osx/export/export.h index 98e63ff48e..50604f068f 100644 --- a/platform/osx/export/export.h +++ b/platform/osx/export/export.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/osx/godot_main_osx.mm b/platform/osx/godot_main_osx.mm index 8eedd7f6fc..5a16869c86 100644 --- a/platform/osx/godot_main_osx.mm +++ b/platform/osx/godot_main_osx.mm @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/osx/godot_osx.h b/platform/osx/godot_osx.h index b6f2b06f26..48784ab7d5 100644 --- a/platform/osx/godot_osx.h +++ b/platform/osx/godot_osx.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/osx/godot_osx.mm b/platform/osx/godot_osx.mm index 2296fb016f..76762213bf 100644 --- a/platform/osx/godot_osx.mm +++ b/platform/osx/godot_osx.mm @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/osx/joypad_osx.cpp b/platform/osx/joypad_osx.cpp index 7b77f3bb68..1a4b3a460e 100644 --- a/platform/osx/joypad_osx.cpp +++ b/platform/osx/joypad_osx.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/osx/joypad_osx.h b/platform/osx/joypad_osx.h index e565f4f46d..bfbc523cff 100644 --- a/platform/osx/joypad_osx.h +++ b/platform/osx/joypad_osx.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/osx/os_osx.h b/platform/osx/os_osx.h index 8676c86131..01817d1b88 100644 --- a/platform/osx/os_osx.h +++ b/platform/osx/os_osx.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/osx/os_osx.mm b/platform/osx/os_osx.mm index 8411bdb114..47b4aed491 100644 --- a/platform/osx/os_osx.mm +++ b/platform/osx/os_osx.mm @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/osx/platform_config.h b/platform/osx/platform_config.h index 834d0141a3..487077e651 100644 --- a/platform/osx/platform_config.h +++ b/platform/osx/platform_config.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/osx/power_osx.cpp b/platform/osx/power_osx.cpp index de9bcaf6fc..0057fe8acc 100644 --- a/platform/osx/power_osx.cpp +++ b/platform/osx/power_osx.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/osx/power_osx.h b/platform/osx/power_osx.h index c638dc675a..6d984ec466 100644 --- a/platform/osx/power_osx.h +++ b/platform/osx/power_osx.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/osx/sem_osx.cpp b/platform/osx/sem_osx.cpp index 069e3a5153..b1eeccfec5 100644 --- a/platform/osx/sem_osx.cpp +++ b/platform/osx/sem_osx.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/osx/sem_osx.h b/platform/osx/sem_osx.h index a30f3fcc98..3025318c4b 100644 --- a/platform/osx/sem_osx.h +++ b/platform/osx/sem_osx.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/server/godot_server.cpp b/platform/server/godot_server.cpp index d06ade4a57..ed0100ac93 100644 --- a/platform/server/godot_server.cpp +++ b/platform/server/godot_server.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/server/os_server.cpp b/platform/server/os_server.cpp index f44d976bd6..5e1034a392 100644 --- a/platform/server/os_server.cpp +++ b/platform/server/os_server.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/server/os_server.h b/platform/server/os_server.h index 7484d70e06..b360a1e183 100644 --- a/platform/server/os_server.h +++ b/platform/server/os_server.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/server/platform_config.h b/platform/server/platform_config.h index cdef185ff0..48bcadcc29 100644 --- a/platform/server/platform_config.h +++ b/platform/server/platform_config.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/uwp/app.cpp b/platform/uwp/app.cpp index 35b25b1de5..2946aa1eae 100644 --- a/platform/uwp/app.cpp +++ b/platform/uwp/app.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/uwp/app.h b/platform/uwp/app.h index fd6fc950a7..647ef0261b 100644 --- a/platform/uwp/app.h +++ b/platform/uwp/app.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/uwp/export/export.cpp b/platform/uwp/export/export.cpp index bef19d80ae..4a164e5ba1 100644 --- a/platform/uwp/export/export.cpp +++ b/platform/uwp/export/export.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/uwp/export/export.h b/platform/uwp/export/export.h index 2d6e02bb10..81bd848241 100644 --- a/platform/uwp/export/export.h +++ b/platform/uwp/export/export.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/uwp/gl_context_egl.cpp b/platform/uwp/gl_context_egl.cpp index 6c9efc26b4..d79ce75db5 100644 --- a/platform/uwp/gl_context_egl.cpp +++ b/platform/uwp/gl_context_egl.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/uwp/gl_context_egl.h b/platform/uwp/gl_context_egl.h index c397c1206b..908b8dceec 100644 --- a/platform/uwp/gl_context_egl.h +++ b/platform/uwp/gl_context_egl.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/uwp/joypad_uwp.cpp b/platform/uwp/joypad_uwp.cpp index 7860994a79..34e36f7b66 100644 --- a/platform/uwp/joypad_uwp.cpp +++ b/platform/uwp/joypad_uwp.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/uwp/joypad_uwp.h b/platform/uwp/joypad_uwp.h index a2572eae3d..7337ffb3ce 100644 --- a/platform/uwp/joypad_uwp.h +++ b/platform/uwp/joypad_uwp.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/uwp/os_uwp.cpp b/platform/uwp/os_uwp.cpp index 907156d280..bcce368ac4 100644 --- a/platform/uwp/os_uwp.cpp +++ b/platform/uwp/os_uwp.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/uwp/os_uwp.h b/platform/uwp/os_uwp.h index 95b834acc4..eac98c80a1 100644 --- a/platform/uwp/os_uwp.h +++ b/platform/uwp/os_uwp.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/uwp/platform_config.h b/platform/uwp/platform_config.h index 7939e1c9ee..77d2c9cadb 100644 --- a/platform/uwp/platform_config.h +++ b/platform/uwp/platform_config.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/uwp/thread_uwp.cpp b/platform/uwp/thread_uwp.cpp index ff079be375..436941707c 100644 --- a/platform/uwp/thread_uwp.cpp +++ b/platform/uwp/thread_uwp.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/uwp/thread_uwp.h b/platform/uwp/thread_uwp.h index b4e67c8b5c..0424f0f577 100644 --- a/platform/uwp/thread_uwp.h +++ b/platform/uwp/thread_uwp.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/windows/context_gl_win.cpp b/platform/windows/context_gl_win.cpp index 449ac264a6..f8aed0ccab 100644 --- a/platform/windows/context_gl_win.cpp +++ b/platform/windows/context_gl_win.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/windows/context_gl_win.h b/platform/windows/context_gl_win.h index 383197ba7f..b3cab7806d 100644 --- a/platform/windows/context_gl_win.h +++ b/platform/windows/context_gl_win.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/windows/ctxgl_procaddr.cpp b/platform/windows/ctxgl_procaddr.cpp index 79c6f219f3..e01c3fc252 100644 --- a/platform/windows/ctxgl_procaddr.cpp +++ b/platform/windows/ctxgl_procaddr.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/windows/ctxgl_procaddr.h b/platform/windows/ctxgl_procaddr.h index da17fbcbbe..ecef01aadf 100644 --- a/platform/windows/ctxgl_procaddr.h +++ b/platform/windows/ctxgl_procaddr.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/windows/export/export.cpp b/platform/windows/export/export.cpp index df1605ae9e..2d11bfe4d8 100644 --- a/platform/windows/export/export.cpp +++ b/platform/windows/export/export.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/windows/export/export.h b/platform/windows/export/export.h index b437efc48e..ea9113c674 100644 --- a/platform/windows/export/export.h +++ b/platform/windows/export/export.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/windows/godot_win.cpp b/platform/windows/godot_win.cpp index f8f5fe8231..df2d96e516 100644 --- a/platform/windows/godot_win.cpp +++ b/platform/windows/godot_win.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/windows/joypad.cpp b/platform/windows/joypad.cpp index 86f7033d40..7263e89c1a 100644 --- a/platform/windows/joypad.cpp +++ b/platform/windows/joypad.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/windows/joypad.h b/platform/windows/joypad.h index 9e6aa41a34..7cd791e78f 100644 --- a/platform/windows/joypad.h +++ b/platform/windows/joypad.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/windows/key_mapping_win.cpp b/platform/windows/key_mapping_win.cpp index 51cdba65d5..bffacb3a82 100644 --- a/platform/windows/key_mapping_win.cpp +++ b/platform/windows/key_mapping_win.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/windows/key_mapping_win.h b/platform/windows/key_mapping_win.h index fbc79635c2..af91676dff 100644 --- a/platform/windows/key_mapping_win.h +++ b/platform/windows/key_mapping_win.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/windows/lang_table.h b/platform/windows/lang_table.h index 7fe509d3e0..7cf2bb391b 100644 --- a/platform/windows/lang_table.h +++ b/platform/windows/lang_table.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/windows/os_windows.cpp b/platform/windows/os_windows.cpp index cfc97d57da..13c4da58e0 100644 --- a/platform/windows/os_windows.cpp +++ b/platform/windows/os_windows.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/windows/os_windows.h b/platform/windows/os_windows.h index 050067ad7d..4c8c2c950f 100644 --- a/platform/windows/os_windows.h +++ b/platform/windows/os_windows.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/windows/packet_peer_udp_winsock.cpp b/platform/windows/packet_peer_udp_winsock.cpp index d98b64df7c..f69c0bd2ed 100644 --- a/platform/windows/packet_peer_udp_winsock.cpp +++ b/platform/windows/packet_peer_udp_winsock.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/windows/packet_peer_udp_winsock.h b/platform/windows/packet_peer_udp_winsock.h index 6b37aefead..ceb6df71aa 100644 --- a/platform/windows/packet_peer_udp_winsock.h +++ b/platform/windows/packet_peer_udp_winsock.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/windows/platform_config.h b/platform/windows/platform_config.h index 0e16753156..a0fc65ca89 100644 --- a/platform/windows/platform_config.h +++ b/platform/windows/platform_config.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/windows/power_windows.cpp b/platform/windows/power_windows.cpp index d4641cd4ec..1d9756f68b 100644 --- a/platform/windows/power_windows.cpp +++ b/platform/windows/power_windows.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/windows/power_windows.h b/platform/windows/power_windows.h index 5c26faa3d1..164f1d7d95 100644 --- a/platform/windows/power_windows.h +++ b/platform/windows/power_windows.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/windows/stream_peer_winsock.cpp b/platform/windows/stream_peer_winsock.cpp index abf182c72a..18c5a40b80 100644 --- a/platform/windows/stream_peer_winsock.cpp +++ b/platform/windows/stream_peer_winsock.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/windows/stream_peer_winsock.h b/platform/windows/stream_peer_winsock.h index c8c2dd4feb..aa60a6500b 100644 --- a/platform/windows/stream_peer_winsock.h +++ b/platform/windows/stream_peer_winsock.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/windows/tcp_server_winsock.cpp b/platform/windows/tcp_server_winsock.cpp index 67713f5d1c..3292813d4e 100644 --- a/platform/windows/tcp_server_winsock.cpp +++ b/platform/windows/tcp_server_winsock.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/windows/tcp_server_winsock.h b/platform/windows/tcp_server_winsock.h index d7b1aee054..7e5d1e750e 100644 --- a/platform/windows/tcp_server_winsock.h +++ b/platform/windows/tcp_server_winsock.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/x11/context_gl_x11.cpp b/platform/x11/context_gl_x11.cpp index 41d110a1e1..432aecb72e 100644 --- a/platform/x11/context_gl_x11.cpp +++ b/platform/x11/context_gl_x11.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/x11/context_gl_x11.h b/platform/x11/context_gl_x11.h index be0f4c822c..acb3f38894 100644 --- a/platform/x11/context_gl_x11.h +++ b/platform/x11/context_gl_x11.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/x11/export/export.cpp b/platform/x11/export/export.cpp index e58c55b51d..b9ded188bf 100644 --- a/platform/x11/export/export.cpp +++ b/platform/x11/export/export.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/x11/export/export.h b/platform/x11/export/export.h index 5beaba2cfb..755b73d2c9 100644 --- a/platform/x11/export/export.h +++ b/platform/x11/export/export.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/x11/godot_x11.cpp b/platform/x11/godot_x11.cpp index 078baf76ee..b293b1bebb 100644 --- a/platform/x11/godot_x11.cpp +++ b/platform/x11/godot_x11.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/x11/joypad_linux.cpp b/platform/x11/joypad_linux.cpp index db4a501b4c..2502b2d51f 100644 --- a/platform/x11/joypad_linux.cpp +++ b/platform/x11/joypad_linux.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/x11/joypad_linux.h b/platform/x11/joypad_linux.h index 7b8ebf5bc3..a0ac559b1c 100644 --- a/platform/x11/joypad_linux.h +++ b/platform/x11/joypad_linux.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/x11/key_mapping_x11.cpp b/platform/x11/key_mapping_x11.cpp index 4cfcffede0..362fc3618a 100644 --- a/platform/x11/key_mapping_x11.cpp +++ b/platform/x11/key_mapping_x11.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/x11/key_mapping_x11.h b/platform/x11/key_mapping_x11.h index 8210df06e7..41060c9303 100644 --- a/platform/x11/key_mapping_x11.h +++ b/platform/x11/key_mapping_x11.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/x11/os_x11.cpp b/platform/x11/os_x11.cpp index 6aeab21c7f..d2650684c3 100644 --- a/platform/x11/os_x11.cpp +++ b/platform/x11/os_x11.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/x11/os_x11.h b/platform/x11/os_x11.h index b5a74c68b8..6bc072099c 100644 --- a/platform/x11/os_x11.h +++ b/platform/x11/os_x11.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/x11/platform_config.h b/platform/x11/platform_config.h index 342270b74a..1a1de42b47 100644 --- a/platform/x11/platform_config.h +++ b/platform/x11/platform_config.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/x11/power_x11.cpp b/platform/x11/power_x11.cpp index 2f98d2f335..3454a6313e 100644 --- a/platform/x11/power_x11.cpp +++ b/platform/x11/power_x11.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/platform/x11/power_x11.h b/platform/x11/power_x11.h index 7693a5b022..64ed5fe26a 100644 --- a/platform/x11/power_x11.h +++ b/platform/x11/power_x11.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/animated_sprite.cpp b/scene/2d/animated_sprite.cpp index f10bd2f303..eba638b0f5 100644 --- a/scene/2d/animated_sprite.cpp +++ b/scene/2d/animated_sprite.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/animated_sprite.h b/scene/2d/animated_sprite.h index bc0e85b0ca..64794b0ca3 100644 --- a/scene/2d/animated_sprite.h +++ b/scene/2d/animated_sprite.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/area_2d.cpp b/scene/2d/area_2d.cpp index 61e8ee16a2..8bce489624 100644 --- a/scene/2d/area_2d.cpp +++ b/scene/2d/area_2d.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/area_2d.h b/scene/2d/area_2d.h index 2402ff763b..3efc1abbd4 100644 --- a/scene/2d/area_2d.h +++ b/scene/2d/area_2d.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/back_buffer_copy.cpp b/scene/2d/back_buffer_copy.cpp index 5a79cee6d0..748a527ca0 100644 --- a/scene/2d/back_buffer_copy.cpp +++ b/scene/2d/back_buffer_copy.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/back_buffer_copy.h b/scene/2d/back_buffer_copy.h index b4f83e7db1..4080f50696 100644 --- a/scene/2d/back_buffer_copy.h +++ b/scene/2d/back_buffer_copy.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/camera_2d.cpp b/scene/2d/camera_2d.cpp index f8388cdcc5..71f651b0a4 100644 --- a/scene/2d/camera_2d.cpp +++ b/scene/2d/camera_2d.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/camera_2d.h b/scene/2d/camera_2d.h index 44cdb5cd99..686f40bedf 100644 --- a/scene/2d/camera_2d.h +++ b/scene/2d/camera_2d.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/canvas_item.cpp b/scene/2d/canvas_item.cpp index 3e5bb7f572..8c8ac835e8 100644 --- a/scene/2d/canvas_item.cpp +++ b/scene/2d/canvas_item.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -37,124 +38,6 @@ #include "scene/scene_string_names.h" #include "servers/visual_server.h" -bool CanvasItemMaterial::_set(const StringName &p_name, const Variant &p_value) { - - if (p_name == SceneStringNames::get_singleton()->shader_shader) { - set_shader(p_value); - return true; - } else { - - if (shader.is_valid()) { - - StringName pr = shader->remap_param(p_name); - if (!pr) { - String n = p_name; - if (n.find("param/") == 0) { //backwards compatibility - pr = n.substr(6, n.length()); - } - } - if (pr) { - VisualServer::get_singleton()->material_set_param(_get_material(), pr, p_value); - return true; - } - } - } - - return false; -} - -bool CanvasItemMaterial::_get(const StringName &p_name, Variant &r_ret) const { - - if (p_name == SceneStringNames::get_singleton()->shader_shader) { - - r_ret = get_shader(); - return true; - - } else { - - if (shader.is_valid()) { - - StringName pr = shader->remap_param(p_name); - if (pr) { - r_ret = VisualServer::get_singleton()->material_get_param(_get_material(), pr); - return true; - } - } - } - - return false; -} - -void CanvasItemMaterial::_get_property_list(List<PropertyInfo> *p_list) const { - - p_list->push_back(PropertyInfo(Variant::OBJECT, "shader/shader", PROPERTY_HINT_RESOURCE_TYPE, "CanvasItemShader,CanvasItemShaderGraph")); - - if (!shader.is_null()) { - - shader->get_param_list(p_list); - } -} - -void CanvasItemMaterial::set_shader(const Ref<Shader> &p_shader) { - - ERR_FAIL_COND(p_shader.is_valid() && p_shader->get_mode() != Shader::MODE_CANVAS_ITEM); - - shader = p_shader; - - RID rid; - if (shader.is_valid()) - rid = shader->get_rid(); - - VS::get_singleton()->material_set_shader(_get_material(), rid); - _change_notify(); //properties for shader exposed - emit_changed(); -} - -Ref<Shader> CanvasItemMaterial::get_shader() const { - - return shader; -} - -void CanvasItemMaterial::set_shader_param(const StringName &p_param, const Variant &p_value) { - - VS::get_singleton()->material_set_param(_get_material(), p_param, p_value); -} - -Variant CanvasItemMaterial::get_shader_param(const StringName &p_param) const { - - return VS::get_singleton()->material_get_param(_get_material(), p_param); -} - -void CanvasItemMaterial::_bind_methods() { - - ClassDB::bind_method(D_METHOD("set_shader", "shader:Shader"), &CanvasItemMaterial::set_shader); - ClassDB::bind_method(D_METHOD("get_shader:Shader"), &CanvasItemMaterial::get_shader); - ClassDB::bind_method(D_METHOD("set_shader_param", "param", "value"), &CanvasItemMaterial::set_shader_param); - ClassDB::bind_method(D_METHOD("get_shader_param", "param"), &CanvasItemMaterial::get_shader_param); -} - -void CanvasItemMaterial::get_argument_options(const StringName &p_function, int p_idx, List<String> *r_options) const { - - String f = p_function.operator String(); - if ((f == "get_shader_param" || f == "set_shader_param") && p_idx == 0) { - - if (shader.is_valid()) { - List<PropertyInfo> pl; - shader->get_param_list(&pl); - for (List<PropertyInfo>::Element *E = pl.front(); E; E = E->next()) { - r_options->push_back("\"" + E->get().name.replace_first("shader_param/", "") + "\""); - } - } - } - Resource::get_argument_options(p_function, p_idx, r_options); -} - -CanvasItemMaterial::CanvasItemMaterial() { -} - -CanvasItemMaterial::~CanvasItemMaterial() { -} - /////////////////////////////////////////////////////////////////// bool CanvasItem::is_visible_in_tree() const { @@ -770,7 +653,7 @@ bool CanvasItem::is_draw_behind_parent_enabled() const { return behind; } -void CanvasItem::set_material(const Ref<CanvasItemMaterial> &p_material) { +void CanvasItem::set_material(const Ref<ShaderMaterial> &p_material) { material = p_material; RID rid; @@ -791,7 +674,7 @@ bool CanvasItem::get_use_parent_material() const { return use_parent_material; } -Ref<CanvasItemMaterial> CanvasItem::get_material() const { +Ref<ShaderMaterial> CanvasItem::get_material() const { return material; } @@ -800,9 +683,7 @@ Vector2 CanvasItem::make_canvas_pos_local(const Vector2 &screen_point) const { ERR_FAIL_COND_V(!is_inside_tree(), screen_point); - Transform2D local_matrix = (get_canvas_transform() * - get_global_transform()) - .affine_inverse(); + Transform2D local_matrix = (get_canvas_transform() * get_global_transform()).affine_inverse(); return local_matrix.xform(screen_point); } @@ -895,8 +776,8 @@ void CanvasItem::_bind_methods() { ClassDB::bind_method(D_METHOD("get_world_2d"), &CanvasItem::get_world_2d); //ClassDB::bind_method(D_METHOD("get_viewport"),&CanvasItem::get_viewport); - ClassDB::bind_method(D_METHOD("set_material", "material:CanvasItemMaterial"), &CanvasItem::set_material); - ClassDB::bind_method(D_METHOD("get_material:CanvasItemMaterial"), &CanvasItem::get_material); + ClassDB::bind_method(D_METHOD("set_material", "material:ShaderMaterial"), &CanvasItem::set_material); + ClassDB::bind_method(D_METHOD("get_material:ShaderMaterial"), &CanvasItem::get_material); ClassDB::bind_method(D_METHOD("set_use_parent_material", "enable"), &CanvasItem::set_use_parent_material); ClassDB::bind_method(D_METHOD("get_use_parent_material"), &CanvasItem::get_use_parent_material); @@ -922,7 +803,7 @@ void CanvasItem::_bind_methods() { ADD_PROPERTYNO(PropertyInfo(Variant::INT, "light_mask", PROPERTY_HINT_LAYERS_2D_RENDER), "set_light_mask", "get_light_mask"); ADD_GROUP("Material", ""); - ADD_PROPERTYNZ(PropertyInfo(Variant::OBJECT, "material", PROPERTY_HINT_RESOURCE_TYPE, "CanvasItemMaterial"), "set_material", "get_material"); + ADD_PROPERTYNZ(PropertyInfo(Variant::OBJECT, "material", PROPERTY_HINT_RESOURCE_TYPE, "ShaderMaterial"), "set_material", "get_material"); ADD_PROPERTYNZ(PropertyInfo(Variant::BOOL, "use_parent_material"), "set_use_parent_material", "get_use_parent_material"); //exporting these two things doesn't really make much sense i think //ADD_PROPERTY( PropertyInfo(Variant::BOOL,"transform/toplevel"), "set_as_toplevel","is_set_as_toplevel") ; diff --git a/scene/2d/canvas_item.h b/scene/2d/canvas_item.h index a188ce495a..ce72f7e0c9 100644 --- a/scene/2d/canvas_item.h +++ b/scene/2d/canvas_item.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -41,38 +42,6 @@ class Font; class StyleBox; -class CanvasItemMaterial : public Material { - - GDCLASS(CanvasItemMaterial, Material); - Ref<Shader> shader; - -public: - /*enum ShadingMode { - SHADING_NORMAL, - SHADING_UNSHADED, - SHADING_ONLY_LIGHT, - };*/ - -protected: - bool _set(const StringName &p_name, const Variant &p_value); - bool _get(const StringName &p_name, Variant &r_ret) const; - void _get_property_list(List<PropertyInfo> *p_list) const; - - static void _bind_methods(); - - void get_argument_options(const StringName &p_function, int p_idx, List<String> *r_options) const; - -public: - void set_shader(const Ref<Shader> &p_shader); - Ref<Shader> get_shader() const; - - void set_shader_param(const StringName &p_param, const Variant &p_value); - Variant get_shader_param(const StringName &p_param) const; - - CanvasItemMaterial(); - ~CanvasItemMaterial(); -}; - class CanvasItem : public Node { GDCLASS(CanvasItem, Node); @@ -114,7 +83,7 @@ private: bool notify_local_transform; bool notify_transform; - Ref<CanvasItemMaterial> material; + Ref<ShaderMaterial> material; mutable Transform2D global_transform; mutable bool global_invalid; @@ -234,8 +203,8 @@ public: RID get_canvas() const; Ref<World2D> get_world_2d() const; - void set_material(const Ref<CanvasItemMaterial> &p_material); - Ref<CanvasItemMaterial> get_material() const; + void set_material(const Ref<ShaderMaterial> &p_material); + Ref<ShaderMaterial> get_material() const; void set_use_parent_material(bool p_use_parent_material); bool get_use_parent_material() const; diff --git a/scene/2d/canvas_modulate.cpp b/scene/2d/canvas_modulate.cpp index a0e3061c85..a132c5e18c 100644 --- a/scene/2d/canvas_modulate.cpp +++ b/scene/2d/canvas_modulate.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/canvas_modulate.h b/scene/2d/canvas_modulate.h index 8e62b5ccb9..37d9d47ba5 100644 --- a/scene/2d/canvas_modulate.h +++ b/scene/2d/canvas_modulate.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/collision_object_2d.cpp b/scene/2d/collision_object_2d.cpp index 1242599d46..afbdfec45e 100644 --- a/scene/2d/collision_object_2d.cpp +++ b/scene/2d/collision_object_2d.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/collision_object_2d.h b/scene/2d/collision_object_2d.h index e6ea0f42d3..e3dc39feae 100644 --- a/scene/2d/collision_object_2d.h +++ b/scene/2d/collision_object_2d.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/collision_polygon_2d.cpp b/scene/2d/collision_polygon_2d.cpp index abc044f10f..b54861a314 100644 --- a/scene/2d/collision_polygon_2d.cpp +++ b/scene/2d/collision_polygon_2d.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/collision_polygon_2d.h b/scene/2d/collision_polygon_2d.h index f1f31a2854..b1a4a4822d 100644 --- a/scene/2d/collision_polygon_2d.h +++ b/scene/2d/collision_polygon_2d.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/collision_shape_2d.cpp b/scene/2d/collision_shape_2d.cpp index 39e0017e92..1687a898db 100644 --- a/scene/2d/collision_shape_2d.cpp +++ b/scene/2d/collision_shape_2d.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/collision_shape_2d.h b/scene/2d/collision_shape_2d.h index a3395cdc1e..3e63981010 100644 --- a/scene/2d/collision_shape_2d.h +++ b/scene/2d/collision_shape_2d.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/joints_2d.cpp b/scene/2d/joints_2d.cpp index 96ef714f1b..1bb40a28b5 100644 --- a/scene/2d/joints_2d.cpp +++ b/scene/2d/joints_2d.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/joints_2d.h b/scene/2d/joints_2d.h index c172620461..b52b0f4670 100644 --- a/scene/2d/joints_2d.h +++ b/scene/2d/joints_2d.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/light_2d.cpp b/scene/2d/light_2d.cpp index 7cf98c8c09..34413074c1 100644 --- a/scene/2d/light_2d.cpp +++ b/scene/2d/light_2d.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/light_2d.h b/scene/2d/light_2d.h index e9f0e069d4..9b09d54dd8 100644 --- a/scene/2d/light_2d.h +++ b/scene/2d/light_2d.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/light_occluder_2d.cpp b/scene/2d/light_occluder_2d.cpp index 401bbcedb2..f1df2b0daf 100644 --- a/scene/2d/light_occluder_2d.cpp +++ b/scene/2d/light_occluder_2d.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/light_occluder_2d.h b/scene/2d/light_occluder_2d.h index 26135334fc..30c30b1a47 100644 --- a/scene/2d/light_occluder_2d.h +++ b/scene/2d/light_occluder_2d.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/line_2d.cpp b/scene/2d/line_2d.cpp index cd9b8e8cb9..c782968ea0 100644 --- a/scene/2d/line_2d.cpp +++ b/scene/2d/line_2d.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/line_2d.h b/scene/2d/line_2d.h index 2cd71e9727..fee1cad942 100644 --- a/scene/2d/line_2d.h +++ b/scene/2d/line_2d.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/line_builder.cpp b/scene/2d/line_builder.cpp index 024c0b89ee..add476ae0f 100644 --- a/scene/2d/line_builder.cpp +++ b/scene/2d/line_builder.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/line_builder.h b/scene/2d/line_builder.h index 43fd281d99..eed9cac0aa 100644 --- a/scene/2d/line_builder.h +++ b/scene/2d/line_builder.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/navigation2d.cpp b/scene/2d/navigation2d.cpp index f0280a2f81..bfe5a359f7 100644 --- a/scene/2d/navigation2d.cpp +++ b/scene/2d/navigation2d.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/navigation2d.h b/scene/2d/navigation2d.h index afa565518d..e5d71f48c3 100644 --- a/scene/2d/navigation2d.h +++ b/scene/2d/navigation2d.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/navigation_polygon.cpp b/scene/2d/navigation_polygon.cpp index 570bd00a5b..aec6d7108b 100644 --- a/scene/2d/navigation_polygon.cpp +++ b/scene/2d/navigation_polygon.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/navigation_polygon.h b/scene/2d/navigation_polygon.h index 6bc3b903c7..f6e6ed210a 100644 --- a/scene/2d/navigation_polygon.h +++ b/scene/2d/navigation_polygon.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/node_2d.cpp b/scene/2d/node_2d.cpp index 16b6342299..ec286b1d54 100644 --- a/scene/2d/node_2d.cpp +++ b/scene/2d/node_2d.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/node_2d.h b/scene/2d/node_2d.h index b9c6894333..65331a4d58 100644 --- a/scene/2d/node_2d.h +++ b/scene/2d/node_2d.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/parallax_background.cpp b/scene/2d/parallax_background.cpp index 17bc26aa7f..433ab5ff8d 100644 --- a/scene/2d/parallax_background.cpp +++ b/scene/2d/parallax_background.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/parallax_background.h b/scene/2d/parallax_background.h index 5914c21c95..99d8dd3811 100644 --- a/scene/2d/parallax_background.h +++ b/scene/2d/parallax_background.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/parallax_layer.cpp b/scene/2d/parallax_layer.cpp index 2387234607..0e83b9aaae 100644 --- a/scene/2d/parallax_layer.cpp +++ b/scene/2d/parallax_layer.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/parallax_layer.h b/scene/2d/parallax_layer.h index 01293e85ac..85e70b0a51 100644 --- a/scene/2d/parallax_layer.h +++ b/scene/2d/parallax_layer.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/particles_2d.cpp b/scene/2d/particles_2d.cpp index c9d5bebe56..2d047f0096 100644 --- a/scene/2d/particles_2d.cpp +++ b/scene/2d/particles_2d.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/particles_2d.h b/scene/2d/particles_2d.h index 0cf4063cef..4b87a26195 100644 --- a/scene/2d/particles_2d.h +++ b/scene/2d/particles_2d.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/path_2d.cpp b/scene/2d/path_2d.cpp index 9e8be7fa1a..0b486bd821 100644 --- a/scene/2d/path_2d.cpp +++ b/scene/2d/path_2d.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/path_2d.h b/scene/2d/path_2d.h index 7357b6810e..b2dae17735 100644 --- a/scene/2d/path_2d.h +++ b/scene/2d/path_2d.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/path_texture.cpp b/scene/2d/path_texture.cpp index 60efccec3d..e06c79dabd 100644 --- a/scene/2d/path_texture.cpp +++ b/scene/2d/path_texture.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/path_texture.h b/scene/2d/path_texture.h index 8d5adc49c8..163e914e4a 100644 --- a/scene/2d/path_texture.h +++ b/scene/2d/path_texture.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/physics_body_2d.cpp b/scene/2d/physics_body_2d.cpp index 00187f28bc..f752cbf6b6 100644 --- a/scene/2d/physics_body_2d.cpp +++ b/scene/2d/physics_body_2d.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/physics_body_2d.h b/scene/2d/physics_body_2d.h index 6ce6f14d36..f706111e7e 100644 --- a/scene/2d/physics_body_2d.h +++ b/scene/2d/physics_body_2d.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/polygon_2d.cpp b/scene/2d/polygon_2d.cpp index 1d54fd1538..cb3e67f895 100644 --- a/scene/2d/polygon_2d.cpp +++ b/scene/2d/polygon_2d.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/polygon_2d.h b/scene/2d/polygon_2d.h index 50968f3de4..f2cc9452b9 100644 --- a/scene/2d/polygon_2d.h +++ b/scene/2d/polygon_2d.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/position_2d.cpp b/scene/2d/position_2d.cpp index 39fc6352e9..74ad9c17e2 100644 --- a/scene/2d/position_2d.cpp +++ b/scene/2d/position_2d.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/position_2d.h b/scene/2d/position_2d.h index a9ead3d87f..67ff2c610d 100644 --- a/scene/2d/position_2d.h +++ b/scene/2d/position_2d.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/ray_cast_2d.cpp b/scene/2d/ray_cast_2d.cpp index 83a0717acf..792861cbf3 100644 --- a/scene/2d/ray_cast_2d.cpp +++ b/scene/2d/ray_cast_2d.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/ray_cast_2d.h b/scene/2d/ray_cast_2d.h index 6a59ef963b..cfecfa2585 100644 --- a/scene/2d/ray_cast_2d.h +++ b/scene/2d/ray_cast_2d.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/remote_transform_2d.cpp b/scene/2d/remote_transform_2d.cpp index 210f64ae23..3cb9ebb5b5 100644 --- a/scene/2d/remote_transform_2d.cpp +++ b/scene/2d/remote_transform_2d.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/remote_transform_2d.h b/scene/2d/remote_transform_2d.h index aa1b214314..375efabf2f 100644 --- a/scene/2d/remote_transform_2d.h +++ b/scene/2d/remote_transform_2d.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/screen_button.cpp b/scene/2d/screen_button.cpp index 804af7d9c6..7712108488 100644 --- a/scene/2d/screen_button.cpp +++ b/scene/2d/screen_button.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/screen_button.h b/scene/2d/screen_button.h index 2262723ed3..0cfaf681dd 100644 --- a/scene/2d/screen_button.h +++ b/scene/2d/screen_button.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/sprite.cpp b/scene/2d/sprite.cpp index 41ea6a39e5..1735bf3b91 100644 --- a/scene/2d/sprite.cpp +++ b/scene/2d/sprite.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/sprite.h b/scene/2d/sprite.h index c4bc800647..86ef335d42 100644 --- a/scene/2d/sprite.h +++ b/scene/2d/sprite.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/tile_map.cpp b/scene/2d/tile_map.cpp index 02b41fbd0c..06d1e128c6 100644 --- a/scene/2d/tile_map.cpp +++ b/scene/2d/tile_map.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -304,7 +305,7 @@ void TileMap::_update_dirty_quadrants() { VS::get_singleton()->free(E->get().id); } q.occluder_instances.clear(); - Ref<CanvasItemMaterial> prev_material; + Ref<ShaderMaterial> prev_material; RID prev_canvas_item; RID prev_debug_canvas_item; @@ -324,7 +325,7 @@ void TileMap::_update_dirty_quadrants() { if (!tex.is_valid()) continue; - Ref<CanvasItemMaterial> mat = tile_set->tile_get_material(c.id); + Ref<ShaderMaterial> mat = tile_set->tile_get_material(c.id); RID canvas_item; RID debug_canvas_item; diff --git a/scene/2d/tile_map.h b/scene/2d/tile_map.h index f52adcd510..8979476aa5 100644 --- a/scene/2d/tile_map.h +++ b/scene/2d/tile_map.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/visibility_notifier_2d.cpp b/scene/2d/visibility_notifier_2d.cpp index f20a995d5f..a37c74cb07 100644 --- a/scene/2d/visibility_notifier_2d.cpp +++ b/scene/2d/visibility_notifier_2d.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/visibility_notifier_2d.h b/scene/2d/visibility_notifier_2d.h index aa49497404..38da69faef 100644 --- a/scene/2d/visibility_notifier_2d.h +++ b/scene/2d/visibility_notifier_2d.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/y_sort.cpp b/scene/2d/y_sort.cpp index 760139287c..f258b7e2e0 100644 --- a/scene/2d/y_sort.cpp +++ b/scene/2d/y_sort.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/2d/y_sort.h b/scene/2d/y_sort.h index c919788498..3564cfc151 100644 --- a/scene/2d/y_sort.h +++ b/scene/2d/y_sort.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/area.cpp b/scene/3d/area.cpp index c42ca2f3f0..8dae078e5b 100644 --- a/scene/3d/area.cpp +++ b/scene/3d/area.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/area.h b/scene/3d/area.h index a50f101ec1..64bbae9236 100644 --- a/scene/3d/area.h +++ b/scene/3d/area.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/baked_light_instance.cpp b/scene/3d/baked_light_instance.cpp index ac424475ea..ffa7597113 100644 --- a/scene/3d/baked_light_instance.cpp +++ b/scene/3d/baked_light_instance.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -250,7 +251,7 @@ Vector<Color> BakedLight::_get_bake_texture(Image &p_image, const Color &p_color BakedLight::MaterialCache BakedLight::_get_material_cache(Ref<Material> p_material) { //this way of obtaining materials is inaccurate and also does not support some compressed formats very well - Ref<FixedSpatialMaterial> mat = p_material; + Ref<SpatialMaterial> mat = p_material; Ref<Material> material = mat; //hack for now @@ -262,7 +263,7 @@ BakedLight::MaterialCache BakedLight::_get_material_cache(Ref<Material> p_materi if (mat.is_valid()) { - Ref<ImageTexture> albedo_tex = mat->get_texture(FixedSpatialMaterial::TEXTURE_ALBEDO); + Ref<ImageTexture> albedo_tex = mat->get_texture(SpatialMaterial::TEXTURE_ALBEDO); Image img_albedo; if (albedo_tex.is_valid()) { @@ -272,7 +273,7 @@ BakedLight::MaterialCache BakedLight::_get_material_cache(Ref<Material> p_materi mc.albedo = _get_bake_texture(img_albedo, mat->get_albedo()); - Ref<ImageTexture> emission_tex = mat->get_texture(FixedSpatialMaterial::TEXTURE_EMISSION); + Ref<ImageTexture> emission_tex = mat->get_texture(SpatialMaterial::TEXTURE_EMISSION); Color emission_col = mat->get_emission(); emission_col.r *= mat->get_emission_energy(); @@ -1591,11 +1592,11 @@ void BakedLight::create_debug_mesh(DebugMode p_mode) { } { - Ref<FixedSpatialMaterial> fsm; + Ref<SpatialMaterial> fsm; fsm.instance(); - fsm->set_flag(FixedSpatialMaterial::FLAG_SRGB_VERTEX_COLOR, true); - fsm->set_flag(FixedSpatialMaterial::FLAG_ALBEDO_FROM_VERTEX_COLOR, true); - fsm->set_flag(FixedSpatialMaterial::FLAG_UNSHADED, true); + fsm->set_flag(SpatialMaterial::FLAG_SRGB_VERTEX_COLOR, true); + fsm->set_flag(SpatialMaterial::FLAG_ALBEDO_FROM_VERTEX_COLOR, true); + fsm->set_flag(SpatialMaterial::FLAG_UNSHADED, true); fsm->set_albedo(Color(1, 1, 1, 1)); mesh->surface_set_material(0, fsm); diff --git a/scene/3d/baked_light_instance.h b/scene/3d/baked_light_instance.h index 2180f8b175..63a5fa7255 100644 --- a/scene/3d/baked_light_instance.h +++ b/scene/3d/baked_light_instance.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/body_shape.cpp b/scene/3d/body_shape.cpp index 8403806570..68f166c5b9 100644 --- a/scene/3d/body_shape.cpp +++ b/scene/3d/body_shape.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/body_shape.h b/scene/3d/body_shape.h index 137a6cd9fc..f4392dda62 100644 --- a/scene/3d/body_shape.h +++ b/scene/3d/body_shape.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/bone_attachment.cpp b/scene/3d/bone_attachment.cpp index d8cb2dfdac..b55b788b54 100644 --- a/scene/3d/bone_attachment.cpp +++ b/scene/3d/bone_attachment.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/bone_attachment.h b/scene/3d/bone_attachment.h index 194d6b4f94..65908d98a8 100644 --- a/scene/3d/bone_attachment.h +++ b/scene/3d/bone_attachment.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/camera.cpp b/scene/3d/camera.cpp index 540edd8a2a..d648ff078c 100644 --- a/scene/3d/camera.cpp +++ b/scene/3d/camera.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/camera.h b/scene/3d/camera.h index 3c31b6beeb..472cfaa008 100644 --- a/scene/3d/camera.h +++ b/scene/3d/camera.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/character_camera.cpp b/scene/3d/character_camera.cpp index edd97eaa6d..065e21fccd 100644 --- a/scene/3d/character_camera.cpp +++ b/scene/3d/character_camera.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/character_camera.h b/scene/3d/character_camera.h index 464fa5c235..c3a1c70d5e 100644 --- a/scene/3d/character_camera.h +++ b/scene/3d/character_camera.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/collision_object.cpp b/scene/3d/collision_object.cpp index c3e19c4b81..4dc01975b8 100644 --- a/scene/3d/collision_object.cpp +++ b/scene/3d/collision_object.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/collision_object.h b/scene/3d/collision_object.h index 9b124cf277..abe0b804bf 100644 --- a/scene/3d/collision_object.h +++ b/scene/3d/collision_object.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/collision_polygon.cpp b/scene/3d/collision_polygon.cpp index 12dab067d0..a9a693f370 100644 --- a/scene/3d/collision_polygon.cpp +++ b/scene/3d/collision_polygon.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/collision_polygon.h b/scene/3d/collision_polygon.h index fee146a87e..d45b4738ae 100644 --- a/scene/3d/collision_polygon.h +++ b/scene/3d/collision_polygon.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/gi_probe.cpp b/scene/3d/gi_probe.cpp index cb1292a9d1..7370e1330c 100644 --- a/scene/3d/gi_probe.cpp +++ b/scene/3d/gi_probe.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -919,7 +920,7 @@ Vector<Color> GIProbe::_get_bake_texture(Image &p_image, const Color &p_color) { GIProbe::Baker::MaterialCache GIProbe::_get_material_cache(Ref<Material> p_material, Baker *p_baker) { //this way of obtaining materials is inaccurate and also does not support some compressed formats very well - Ref<FixedSpatialMaterial> mat = p_material; + Ref<SpatialMaterial> mat = p_material; Ref<Material> material = mat; //hack for now @@ -931,7 +932,7 @@ GIProbe::Baker::MaterialCache GIProbe::_get_material_cache(Ref<Material> p_mater if (mat.is_valid()) { - Ref<Texture> albedo_tex = mat->get_texture(FixedSpatialMaterial::TEXTURE_ALBEDO); + Ref<Texture> albedo_tex = mat->get_texture(SpatialMaterial::TEXTURE_ALBEDO); Image img_albedo; if (albedo_tex.is_valid()) { @@ -942,7 +943,7 @@ GIProbe::Baker::MaterialCache GIProbe::_get_material_cache(Ref<Material> p_mater mc.albedo = _get_bake_texture(img_albedo, mat->get_albedo()); - Ref<ImageTexture> emission_tex = mat->get_texture(FixedSpatialMaterial::TEXTURE_EMISSION); + Ref<ImageTexture> emission_tex = mat->get_texture(SpatialMaterial::TEXTURE_EMISSION); Color emission_col = mat->get_emission(); emission_col.r *= mat->get_emission_energy(); @@ -1365,11 +1366,11 @@ void GIProbe::_create_debug_mesh(Baker *p_baker) { } { - Ref<FixedSpatialMaterial> fsm; + Ref<SpatialMaterial> fsm; fsm.instance(); - fsm->set_flag(FixedSpatialMaterial::FLAG_SRGB_VERTEX_COLOR, true); - fsm->set_flag(FixedSpatialMaterial::FLAG_ALBEDO_FROM_VERTEX_COLOR, true); - fsm->set_flag(FixedSpatialMaterial::FLAG_UNSHADED, true); + fsm->set_flag(SpatialMaterial::FLAG_SRGB_VERTEX_COLOR, true); + fsm->set_flag(SpatialMaterial::FLAG_ALBEDO_FROM_VERTEX_COLOR, true); + fsm->set_flag(SpatialMaterial::FLAG_UNSHADED, true); fsm->set_albedo(Color(1, 1, 1, 1)); mesh->surface_set_material(0, fsm); diff --git a/scene/3d/gi_probe.h b/scene/3d/gi_probe.h index 675b41cef9..ae89a6f068 100644 --- a/scene/3d/gi_probe.h +++ b/scene/3d/gi_probe.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/immediate_geometry.cpp b/scene/3d/immediate_geometry.cpp index adcc167223..8c1ad1d052 100644 --- a/scene/3d/immediate_geometry.cpp +++ b/scene/3d/immediate_geometry.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/immediate_geometry.h b/scene/3d/immediate_geometry.h index 6e0123992c..2eb4bf1e6b 100644 --- a/scene/3d/immediate_geometry.h +++ b/scene/3d/immediate_geometry.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/interpolated_camera.cpp b/scene/3d/interpolated_camera.cpp index 9723a686c5..3855244787 100644 --- a/scene/3d/interpolated_camera.cpp +++ b/scene/3d/interpolated_camera.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/interpolated_camera.h b/scene/3d/interpolated_camera.h index ebadf39946..c302c32fc9 100644 --- a/scene/3d/interpolated_camera.h +++ b/scene/3d/interpolated_camera.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/light.cpp b/scene/3d/light.cpp index 7d01230517..bb14ad5108 100644 --- a/scene/3d/light.cpp +++ b/scene/3d/light.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/light.h b/scene/3d/light.h index fd50f0fcc4..ed8758b09b 100644 --- a/scene/3d/light.h +++ b/scene/3d/light.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/listener.cpp b/scene/3d/listener.cpp index fc9326b571..148afbffa2 100644 --- a/scene/3d/listener.cpp +++ b/scene/3d/listener.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/listener.h b/scene/3d/listener.h index 4fb2aea072..b66fc7fc38 100644 --- a/scene/3d/listener.h +++ b/scene/3d/listener.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/mesh_instance.cpp b/scene/3d/mesh_instance.cpp index b61232dbfd..5b5bce342d 100644 --- a/scene/3d/mesh_instance.cpp +++ b/scene/3d/mesh_instance.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/mesh_instance.h b/scene/3d/mesh_instance.h index 543f407ca1..c11c52b76d 100644 --- a/scene/3d/mesh_instance.h +++ b/scene/3d/mesh_instance.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/multimesh_instance.cpp b/scene/3d/multimesh_instance.cpp index 18a747a5b9..b51953f27c 100644 --- a/scene/3d/multimesh_instance.cpp +++ b/scene/3d/multimesh_instance.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/multimesh_instance.h b/scene/3d/multimesh_instance.h index 4a0edb563c..7e14d567ac 100644 --- a/scene/3d/multimesh_instance.h +++ b/scene/3d/multimesh_instance.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/navigation.cpp b/scene/3d/navigation.cpp index 093d217cb0..de6b242bfe 100644 --- a/scene/3d/navigation.cpp +++ b/scene/3d/navigation.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/navigation.h b/scene/3d/navigation.h index 6222d2bad3..53e0b6399a 100644 --- a/scene/3d/navigation.h +++ b/scene/3d/navigation.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/navigation_mesh.cpp b/scene/3d/navigation_mesh.cpp index 1059a9b979..13fd852fe7 100644 --- a/scene/3d/navigation_mesh.cpp +++ b/scene/3d/navigation_mesh.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/navigation_mesh.h b/scene/3d/navigation_mesh.h index fda8923788..c8f6d936aa 100644 --- a/scene/3d/navigation_mesh.h +++ b/scene/3d/navigation_mesh.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/particles.cpp b/scene/3d/particles.cpp index ea61253ac7..b7ee26de57 100644 --- a/scene/3d/particles.cpp +++ b/scene/3d/particles.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -30,532 +31,1353 @@ #include "scene/resources/surface_tool.h" #include "servers/visual_server.h" -#if 0 -/* -static const char* _var_names[Particles::VAR_MAX]={ - "vars/lifetime", - "vars/spread", - "vars/gravity", - "vars/linear_vel", - "vars/angular_vel", - "vars/linear_accel", - "vars/radial_accel", - "vars/tan_accel", - "vars/initial_size", - "vars/final_size", - "vars/initial_angle", - "vars/height", - "vars/height_speed_scale", -}; -*/ -static const char* _rand_names[Particles::VAR_MAX]={ - "rand/lifetime", - "rand/spread", - "rand/gravity", - "rand/linear_vel", - "rand/angular_vel", - "rand/linear_accel", - "rand/radial_accel", - "rand/tan_accel", - "rand/damping", - "rand/initial_size", - "rand/final_size", - "rand/initial_angle", - "rand/height", - "rand/height_speed_scale", -}; - -static const Particles::Variable _var_indices[Particles::VAR_MAX]={ - Particles::VAR_LIFETIME, - Particles::VAR_SPREAD, - Particles::VAR_GRAVITY, - Particles::VAR_LINEAR_VELOCITY, - Particles::VAR_ANGULAR_VELOCITY, - Particles::VAR_LINEAR_ACCELERATION, - Particles::VAR_DRAG, - Particles::VAR_TANGENTIAL_ACCELERATION, - Particles::VAR_DAMPING, - Particles::VAR_INITIAL_SIZE, - Particles::VAR_FINAL_SIZE, - Particles::VAR_INITIAL_ANGLE, - Particles::VAR_HEIGHT, - Particles::VAR_HEIGHT_SPEED_SCALE, -}; - - - -AABB Particles::get_aabb() const { - - return AABB( Vector3(-1,-1,-1), Vector3(2, 2, 2 ) ); +Rect3 Particles::get_aabb() const { + + return Rect3(); } PoolVector<Face3> Particles::get_faces(uint32_t p_usage_flags) const { return PoolVector<Face3>(); } +void Particles::set_emitting(bool p_emitting) { + + emitting = p_emitting; + VS::get_singleton()->particles_set_emitting(particles, emitting); +} void Particles::set_amount(int p_amount) { - ERR_FAIL_INDEX(p_amount,1024); - amount=p_amount; - VisualServer::get_singleton()->particles_set_amount(particles,p_amount); + amount = p_amount; + VS::get_singleton()->particles_set_amount(particles, amount); } -int Particles::get_amount() const { +void Particles::set_lifetime(float p_lifetime) { - return amount; + lifetime = p_lifetime; + VS::get_singleton()->particles_set_lifetime(particles, lifetime); } +void Particles::set_pre_process_time(float p_time) { -void Particles::set_emitting(bool p_emitting) { + pre_process_time = p_time; + VS::get_singleton()->particles_set_pre_process_time(particles, pre_process_time); +} +void Particles::set_explosiveness_ratio(float p_ratio) { + + explosiveness_ratio = p_ratio; + VS::get_singleton()->particles_set_explosiveness_ratio(particles, explosiveness_ratio); +} +void Particles::set_randomness_ratio(float p_ratio) { - emitting=p_emitting; - VisualServer::get_singleton()->particles_set_emitting(particles,p_emitting); + randomness_ratio = p_ratio; + VS::get_singleton()->particles_set_randomness_ratio(particles, randomness_ratio); +} +void Particles::set_custom_aabb(const Rect3 &p_aabb) { + + custom_aabb = p_aabb; + VS::get_singleton()->particles_set_custom_aabb(particles, custom_aabb); +} +void Particles::set_gravity(const Vector3 &p_gravity) { + + gravity = p_gravity; + VS::get_singleton()->particles_set_gravity(particles, gravity); +} +void Particles::set_use_local_coordinates(bool p_enable) { - setup_timer(); + local_coords = p_enable; + VS::get_singleton()->particles_set_use_local_coordinates(particles, local_coords); } +void Particles::set_process_material(const Ref<Material> &p_material) { + + process_material = p_material; + RID material_rid; + if (process_material.is_valid()) + material_rid = process_material->get_rid(); + VS::get_singleton()->particles_set_process_material(particles, material_rid); +} + bool Particles::is_emitting() const { return emitting; } +int Particles::get_amount() const { -void Particles::set_visibility_aabb(const AABB& p_aabb) { + return amount; +} +float Particles::get_lifetime() const { + + return lifetime; +} +float Particles::get_pre_process_time() const { + + return pre_process_time; +} +float Particles::get_explosiveness_ratio() const { - visibility_aabb=p_aabb; - VisualServer::get_singleton()->particles_set_visibility_aabb(particles,p_aabb); - update_gizmo(); + return explosiveness_ratio; +} +float Particles::get_randomness_ratio() const { + return randomness_ratio; } -AABB Particles::get_visibility_aabb() const { +Rect3 Particles::get_custom_aabb() const { - return visibility_aabb; + return custom_aabb; } +Vector3 Particles::get_gravity() const { + return gravity; +} +bool Particles::get_use_local_coordinates() const { -void Particles::set_emission_points(const PoolVector<Vector3>& p_points) { + return local_coords; +} +Ref<Material> Particles::get_process_material() const { - using_points = p_points.size(); - VisualServer::get_singleton()->particles_set_emission_points(particles,p_points); + return process_material; } -PoolVector<Vector3> Particles::get_emission_points() const { +void Particles::set_draw_order(DrawOrder p_order) { - if (!using_points) - return PoolVector<Vector3>(); + draw_order = p_order; + VS::get_singleton()->particles_set_draw_order(particles, VS::ParticlesDrawOrder(p_order)); +} - return VisualServer::get_singleton()->particles_get_emission_points(particles); +Particles::DrawOrder Particles::get_draw_order() const { + return draw_order; } -void Particles::set_emission_half_extents(const Vector3& p_half_extents) { +void Particles::set_draw_passes(int p_count) { - emission_half_extents=p_half_extents; - VisualServer::get_singleton()->particles_set_emission_half_extents(particles,p_half_extents); + ERR_FAIL_COND(p_count < 1); + draw_passes.resize(p_count); + VS::get_singleton()->particles_set_draw_passes(particles, p_count); + _change_notify(); +} +int Particles::get_draw_passes() const { + return draw_passes.size(); } -Vector3 Particles::get_emission_half_extents() const { +void Particles::set_draw_pass_mesh(int p_pass, const Ref<Mesh> &p_mesh) { - return emission_half_extents; + ERR_FAIL_INDEX(p_pass, draw_passes.size()); + + draw_passes[p_pass] = p_mesh; + + RID mesh_rid; + if (p_mesh.is_valid()) + mesh_rid = p_mesh->get_rid(); + + VS::get_singleton()->particles_set_draw_pass_mesh(particles, p_pass, mesh_rid); } -void Particles::set_emission_base_velocity(const Vector3& p_base_velocity) { +Ref<Mesh> Particles::get_draw_pass_mesh(int p_pass) const { - emission_base_velocity=p_base_velocity; - VisualServer::get_singleton()->particles_set_emission_base_velocity(particles,p_base_velocity); + ERR_FAIL_INDEX_V(p_pass, draw_passes.size(), Ref<Mesh>()); + return draw_passes[p_pass]; } -Vector3 Particles::get_emission_base_velocity() const { +void Particles::set_fixed_fps(int p_count) { + fixed_fps = p_count; + VS::get_singleton()->particles_set_fixed_fps(particles, p_count); +} - return emission_base_velocity; +int Particles::get_fixed_fps() const { + return fixed_fps; } -void Particles::set_gravity_normal(const Vector3& p_normal) { +void Particles::set_fractional_delta(bool p_enable) { + fractional_delta = p_enable; + VS::get_singleton()->particles_set_fractional_delta(particles, p_enable); +} - gravity_normal=p_normal; - VisualServer::get_singleton()->particles_set_gravity_normal(particles,p_normal); +bool Particles::get_fractional_delta() const { + return fractional_delta; +} + +void Particles::_validate_property(PropertyInfo &property) const { + + if (property.name.begins_with("draw_pass_")) { + int index = property.name.get_slicec('_', 2).to_int() - 1; + if (index >= draw_passes.size()) { + property.usage = 0; + return; + } + } } -Vector3 Particles::get_gravity_normal() const { +void Particles::_bind_methods() { + + ClassDB::bind_method(D_METHOD("set_emitting", "emitting"), &Particles::set_emitting); + ClassDB::bind_method(D_METHOD("set_amount", "amount"), &Particles::set_amount); + ClassDB::bind_method(D_METHOD("set_lifetime", "secs"), &Particles::set_lifetime); + ClassDB::bind_method(D_METHOD("set_pre_process_time", "secs"), &Particles::set_pre_process_time); + ClassDB::bind_method(D_METHOD("set_explosiveness_ratio", "ratio"), &Particles::set_explosiveness_ratio); + ClassDB::bind_method(D_METHOD("set_randomness_ratio", "ratio"), &Particles::set_randomness_ratio); + ClassDB::bind_method(D_METHOD("set_custom_aabb", "aabb"), &Particles::set_custom_aabb); + ClassDB::bind_method(D_METHOD("set_gravity", "accel_vec"), &Particles::set_gravity); + ClassDB::bind_method(D_METHOD("set_use_local_coordinates", "enable"), &Particles::set_use_local_coordinates); + ClassDB::bind_method(D_METHOD("set_fixed_fps", "fps"), &Particles::set_fixed_fps); + ClassDB::bind_method(D_METHOD("set_fractional_delta", "enable"), &Particles::set_fractional_delta); + ClassDB::bind_method(D_METHOD("set_process_material", "material:Material"), &Particles::set_process_material); + + ClassDB::bind_method(D_METHOD("is_emitting"), &Particles::is_emitting); + ClassDB::bind_method(D_METHOD("get_amount"), &Particles::get_amount); + ClassDB::bind_method(D_METHOD("get_lifetime"), &Particles::get_lifetime); + ClassDB::bind_method(D_METHOD("get_pre_process_time"), &Particles::get_pre_process_time); + ClassDB::bind_method(D_METHOD("get_explosiveness_ratio"), &Particles::get_explosiveness_ratio); + ClassDB::bind_method(D_METHOD("get_randomness_ratio"), &Particles::get_randomness_ratio); + ClassDB::bind_method(D_METHOD("get_custom_aabb"), &Particles::get_custom_aabb); + ClassDB::bind_method(D_METHOD("get_gravity"), &Particles::get_gravity); + ClassDB::bind_method(D_METHOD("get_use_local_coordinates"), &Particles::get_use_local_coordinates); + ClassDB::bind_method(D_METHOD("get_fixed_fps"), &Particles::get_fixed_fps); + ClassDB::bind_method(D_METHOD("get_fractional_delta"), &Particles::get_fractional_delta); + ClassDB::bind_method(D_METHOD("get_process_material:Material"), &Particles::get_process_material); + + ClassDB::bind_method(D_METHOD("set_draw_order", "order"), &Particles::set_draw_order); + + ClassDB::bind_method(D_METHOD("get_draw_order"), &Particles::get_draw_order); + + ClassDB::bind_method(D_METHOD("set_draw_passes", "passes"), &Particles::set_draw_passes); + ClassDB::bind_method(D_METHOD("set_draw_pass_mesh", "pass", "mesh:Mesh"), &Particles::set_draw_pass_mesh); + + ClassDB::bind_method(D_METHOD("get_draw_passes"), &Particles::get_draw_passes); + ClassDB::bind_method(D_METHOD("get_draw_pass_mesh:Mesh", "pass"), &Particles::get_draw_pass_mesh); + + ADD_GROUP("Parameters", ""); + ADD_PROPERTY(PropertyInfo(Variant::BOOL, "emitting"), "set_emitting", "is_emitting"); + ADD_PROPERTY(PropertyInfo(Variant::INT, "amount", PROPERTY_HINT_RANGE, "1,100000,1"), "set_amount", "get_amount"); + ADD_PROPERTY(PropertyInfo(Variant::REAL, "lifetime", PROPERTY_HINT_RANGE, "0.01,600.0,0.01"), "set_lifetime", "get_lifetime"); + ADD_PROPERTY(PropertyInfo(Variant::REAL, "preprocess", PROPERTY_HINT_RANGE, "0.00,600.0,0.01"), "set_pre_process_time", "get_pre_process_time"); + ADD_PROPERTY(PropertyInfo(Variant::REAL, "explosiveness", PROPERTY_HINT_RANGE, "0,1,0.01"), "set_explosiveness_ratio", "get_explosiveness_ratio"); + ADD_PROPERTY(PropertyInfo(Variant::REAL, "randomness", PROPERTY_HINT_RANGE, "0,1,0.01"), "set_randomness_ratio", "get_randomness_ratio"); + ADD_PROPERTY(PropertyInfo(Variant::RECT3, "custom_aabb"), "set_custom_aabb", "get_custom_aabb"); + ADD_PROPERTY(PropertyInfo(Variant::VECTOR3, "gravity"), "set_gravity", "get_gravity"); + ADD_PROPERTY(PropertyInfo(Variant::BOOL, "local_coords"), "set_use_local_coordinates", "get_use_local_coordinates"); + ADD_PROPERTY(PropertyInfo(Variant::INT, "fixed_fps", PROPERTY_HINT_RANGE, "0,1000,1"), "set_fixed_fps", "get_fixed_fps"); + ADD_PROPERTY(PropertyInfo(Variant::BOOL, "fract_delta"), "set_fractional_delta", "get_fractional_delta"); + ADD_PROPERTY(PropertyInfo(Variant::OBJECT, "process_material", PROPERTY_HINT_RESOURCE_TYPE, "ParticlesMaterial,ShaderMaterial"), "set_process_material", "get_process_material"); + ADD_PROPERTY(PropertyInfo(Variant::INT, "draw_order", PROPERTY_HINT_ENUM, "Index,Lifetime,View Depth"), "set_draw_order", "get_draw_order"); + ADD_GROUP("Draw Passes", "draw_"); + ADD_PROPERTY(PropertyInfo(Variant::INT, "draw_passes", PROPERTY_HINT_RANGE, "0," + itos(MAX_DRAW_PASSES) + ",1"), "set_draw_passes", "get_draw_passes"); + for (int i = 0; i < MAX_DRAW_PASSES; i++) { + + ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "draw_pass_" + itos(i + 1), PROPERTY_HINT_RESOURCE_TYPE, "Mesh"), "set_draw_pass_mesh", "get_draw_pass_mesh", i); + } + + BIND_CONSTANT(DRAW_ORDER_INDEX); + BIND_CONSTANT(DRAW_ORDER_LIFETIME); + BIND_CONSTANT(DRAW_ORDER_VIEW_DEPTH); + BIND_CONSTANT(MAX_DRAW_PASSES); +} - return gravity_normal; +Particles::Particles() { + particles = VS::get_singleton()->particles_create(); + set_base(particles); + set_emitting(true); + set_amount(100); + set_lifetime(1); + set_fixed_fps(0); + set_fractional_delta(true); + set_pre_process_time(0); + set_explosiveness_ratio(0); + set_randomness_ratio(0); + set_gravity(Vector3(0, -9.8, 0)); + set_use_local_coordinates(true); + set_draw_passes(1); } -void Particles::set_variable(Variable p_variable,float p_value) { +Particles::~Particles() { - ERR_FAIL_INDEX(p_variable,VAR_MAX); - var[p_variable]=p_value; - VisualServer::get_singleton()->particles_set_variable(particles,(VS::ParticleVariable)p_variable,p_value); - if (p_variable==VAR_SPREAD) - update_gizmo(); + VS::get_singleton()->free(particles); } -float Particles::get_variable(Variable p_variable) const { +////////////////////////////////////// - ERR_FAIL_INDEX_V(p_variable,VAR_MAX,-1); - return var[p_variable]; +Mutex *ParticlesMaterial::material_mutex = NULL; +SelfList<ParticlesMaterial>::List ParticlesMaterial::dirty_materials; +Map<ParticlesMaterial::MaterialKey, ParticlesMaterial::ShaderData> ParticlesMaterial::shader_map; +ParticlesMaterial::ShaderNames *ParticlesMaterial::shader_names = NULL; +void ParticlesMaterial::init_shaders() { + +#ifndef NO_THREADS + material_mutex = Mutex::create(); +#endif + + shader_names = memnew(ShaderNames); + + shader_names->spread = "spread"; + shader_names->flatness = "flatness"; + shader_names->initial_linear_velocity = "initial_linear_velocity"; + shader_names->initial_angle = "initial_angle"; + shader_names->angular_velocity = "angular_velocity"; + shader_names->orbit_velocity = "orbit_velocity"; + shader_names->linear_accel = "linear_accel"; + shader_names->radial_accel = "radial_accel"; + shader_names->tangent_accel = "tangent_accel"; + shader_names->damping = "damping"; + shader_names->scale = "scale"; + shader_names->hue_variation = "hue_variation"; + shader_names->anim_speed = "anim_speed"; + shader_names->anim_offset = "anim_offset"; + + shader_names->initial_linear_velocity = "initial_linear_velocity_random"; + shader_names->initial_angle_random = "initial_angle_random"; + shader_names->angular_velocity_random = "angular_velocity_random"; + shader_names->orbit_velocity_random = "orbit_velocity_random"; + shader_names->linear_accel_random = "linear_accel_random"; + shader_names->radial_accel_random = "radial_accel_random"; + shader_names->tangent_accel_random = "tangent_accel_random"; + shader_names->damping_random = "damping_random"; + shader_names->scale_random = "scale_random"; + shader_names->hue_variation_random = "hue_variation_random"; + shader_names->anim_speed_random = "anim_speed_random"; + shader_names->anim_offset_random = "anim_offset_random"; + + shader_names->angle_texture = "angle_texture"; + shader_names->angular_velocity_texture = "angular_velocity_texture"; + shader_names->orbit_velocity_texture = "orbit_velocity_texture"; + shader_names->linear_accel_texture = "linear_accel_texture"; + shader_names->radial_accel_texture = "radial_accel_texture"; + shader_names->tangent_accel_texture = "tangent_accel_texture"; + shader_names->damping_texture = "damping_texture"; + shader_names->scale_texture = "scale_texture"; + shader_names->hue_variation_texture = "hue_variation_texture"; + shader_names->anim_speed_texture = "anim_speed_texture"; + shader_names->anim_offset_texture = "anim_offset_texture"; + + shader_names->color = "color_value"; + shader_names->color_ramp = "color_ramp"; + + shader_names->emission_sphere_radius = "emission_sphere_radius"; + shader_names->emission_box_extents = "emission_box_extents"; + shader_names->emission_texture_point_count = "emission_texture_point_count"; + shader_names->emission_texture_points = "emission_texture_points"; + shader_names->emission_texture_normal = "emission_texture_normal"; + + shader_names->trail_divisor = "trail_divisor"; + shader_names->trail_size_modifier = "trail_size_modifier"; + shader_names->trail_color_modifier = "trail_color_modifier"; } -void Particles::set_randomness(Variable p_variable,float p_randomness) { +void ParticlesMaterial::finish_shaders() { - ERR_FAIL_INDEX(p_variable,VAR_MAX); - var_random[p_variable]=p_randomness; - VisualServer::get_singleton()->particles_set_randomness(particles,(VS::ParticleVariable)p_variable,p_randomness); +#ifndef NO_THREADS + memdelete(material_mutex); +#endif + memdelete(shader_names); } -float Particles::get_randomness(Variable p_variable) const { - ERR_FAIL_INDEX_V(p_variable,VAR_MAX,-1); - return var_random[p_variable]; +void ParticlesMaterial::_update_shader() { + + print_line("updating shader"); + + dirty_materials.remove(&element); + + MaterialKey mk = _compute_key(); + if (mk.key == current_key.key) + return; //no update required in the end + + if (shader_map.has(current_key)) { + shader_map[current_key].users--; + if (shader_map[current_key].users == 0) { + //deallocate shader, as it's no longer in use + VS::get_singleton()->free(shader_map[current_key].shader); + shader_map.erase(current_key); + } + } + current_key = mk; + + if (shader_map.has(mk)) { + + VS::get_singleton()->material_set_shader(_get_material(), shader_map[mk].shader); + shader_map[mk].users++; + return; + } + + //must create a shader! + + String code = "shader_type particles;\n"; + + code += "uniform float spread;\n"; + code += "uniform float flatness;\n"; + code += "uniform float initial_linear_velocity;\n"; + code += "uniform float initial_angle;\n"; + code += "uniform float angular_velocity;\n"; + code += "uniform float orbit_velocity;\n"; + code += "uniform float linear_accel;\n"; + code += "uniform float radial_accel;\n"; + code += "uniform float tangent_accel;\n"; + code += "uniform float damping;\n"; + code += "uniform float scale;\n"; + code += "uniform float hue_variation;\n"; + code += "uniform float anim_speed;\n"; + code += "uniform float anim_offset;\n"; + + code += "uniform float initial_linear_velocity_random;\n"; + code += "uniform float initial_angle_random;\n"; + code += "uniform float angular_velocity_random;\n"; + code += "uniform float orbit_velocity_random;\n"; + code += "uniform float linear_accel_random;\n"; + code += "uniform float radial_accel_random;\n"; + code += "uniform float tangent_accel_random;\n"; + code += "uniform float damping_random;\n"; + code += "uniform float scale_random;\n"; + code += "uniform float hue_variation_random;\n"; + code += "uniform float anim_speed_random;\n"; + code += "uniform float anim_offset_random;\n"; + + code += "uniform vec4 color_value : hint_color;\n"; + + code += "uniform int trail_divisor;\n"; + + if (color_ramp.is_valid()) + code += "uniform sampler2D color_ramp;\n"; + + if (tex_parameters[PARAM_INITIAL_LINEAR_VELOCITY].is_valid()) + code += "uniform sampler2D linear_velocity_texture;\n"; + if (tex_parameters[PARAM_ORBIT_VELOCITY].is_valid()) + code += "uniform sampler2D orbit_velocity_texture;\n"; + if (tex_parameters[PARAM_ANGULAR_VELOCITY].is_valid()) + code += "uniform sampler2D angular_velocity_texture;\n"; + if (tex_parameters[PARAM_LINEAR_ACCEL].is_valid()) + code += "uniform sampler2D linear_accel_texture;\n"; + if (tex_parameters[PARAM_RADIAL_ACCEL].is_valid()) + code += "uniform sampler2D radial_accel_texture;\n"; + if (tex_parameters[PARAM_TANGENTIAL_ACCEL].is_valid()) + code += "uniform sampler2D tangent_accel_texture;\n"; + if (tex_parameters[PARAM_DAMPING].is_valid()) + code += "uniform sampler2D damping_texture;\n"; + if (tex_parameters[PARAM_ANGLE].is_valid()) + code += "uniform sampler2D angle_texture;\n"; + if (tex_parameters[PARAM_SCALE].is_valid()) + code += "uniform sampler2D scale_texture;\n"; + if (tex_parameters[PARAM_HUE_VARIATION].is_valid()) + code += "uniform sampler2D hue_variation_texture;\n"; + if (tex_parameters[PARAM_ANIM_SPEED].is_valid()) + code += "uniform sampler2D anim_speed_texture;\n"; + if (tex_parameters[PARAM_ANIM_OFFSET].is_valid()) + code += "uniform sampler2D anim_offset_texture;\n"; + + switch (emission_shape) { + case EMISSION_SHAPE_POINT: { + //do none + } break; + case EMISSION_SHAPE_SPHERE: { + code += "uniform float emission_sphere_radius;\n"; + } break; + case EMISSION_SHAPE_BOX: { + code += "uniform vec3 emission_box_extents;\n"; + } break; + case EMISSION_SHAPE_DIRECTED_POINTS: { + code += "uniform sampler2D emission_texture_normal : hint_black;\n"; + } //fallthrough + case EMISSION_SHAPE_POINTS: { + code += "uniform sampler2D emission_texture_points : hint_black;\n"; + code += "uniform int emission_texture_point_count;\n"; + } break; + } + + if (trail_size_modifier.is_valid()) { + code += "uniform sampler2D trail_size_modifier;\n"; + } + + if (trail_color_modifier.is_valid()) { + code += "uniform sampler2D trail_color_modifier;\n"; + } + + //need a random function + code += "\n\n"; + code += "float rand_from_seed(inout uint seed) {\n"; + code += " int k;\n"; + code += " int s = int(seed);\n"; + code += " if (s == 0)\n"; + code += " s = 305420679;\n"; + code += " k = s / 127773;\n"; + code += " s = 16807 * (s - k * 127773) - 2836 * k;\n"; + code += " if (s < 0)\n"; + code += " s += 2147483647;\n"; + code += " seed = uint(s);\n"; + code += " return float(seed % uint(65536))/65535.0;\n"; + code += "}\n"; + //improve seed quality + code += "uint hash(uint x) {\n"; + code += " x = ((x >> uint(16)) ^ x) * uint(73244475);\n"; + code += " x = ((x >> uint(16)) ^ x) * uint(73244475);\n"; + code += " x = (x >> uint(16)) ^ x;\n"; + code += " return x;\n"; + code += "}\n"; + code += "void vertex() {\n\n"; + code += "\n"; + + code += " uint base_number=NUMBER/uint(trail_divisor);\n"; + code += " uint alt_seed=hash(base_number+uint(1));\n"; + code += " float angle_rand=rand_from_seed(alt_seed);\n"; + code += " float scale_rand=rand_from_seed(alt_seed);\n"; + code += " float hue_rot_rand=rand_from_seed(alt_seed);\n"; + code += " float anim_offset_rand=rand_from_seed(alt_seed);\n"; + code += "\n"; + code += "\n"; + code += "\n"; + code += "\n"; + code += " if (RESTART) {\n"; + + if (tex_parameters[PARAM_INITIAL_LINEAR_VELOCITY].is_valid()) + code += " float tex_linear_velocity = textureLod(linear_velocity_texture,vec2(0.0,0.0),0.0).r;\n"; + else + code += " float tex_linear_velocity = 0.0;\n"; + + if (tex_parameters[PARAM_ANGLE].is_valid()) + code += " float tex_angle = textureLod(angle_texture,vec2(0.0,0.0),0.0).r;\n"; + else + code += " float tex_angle = 0.0;\n"; + + if (tex_parameters[PARAM_ANIM_OFFSET].is_valid()) + code += " float tex_anim_offset = textureLod(anim_offset_texture,vec2(0.0,0.0),0.0).r;\n"; + else + code += " float tex_anim_offset = 0.0;\n"; + + code += " float angle1 = rand_from_seed(alt_seed)*spread*3.1416;\n"; + code += " float angle2 = rand_from_seed(alt_seed)*20.0*3.1416; // make it more random like\n"; + code += " vec3 rot_xz=vec3( sin(angle1), 0.0, cos(angle1) );\n"; + code += " vec3 rot = vec3( cos(angle2)*rot_xz.x,sin(angle2)*rot_xz.x, rot_xz.z);\n"; + code += " VELOCITY=(rot*initial_linear_velocity+rot*initial_linear_velocity_random*rand_from_seed(alt_seed));\n"; + code += " float base_angle=(initial_angle+tex_angle)*mix(1.0,angle_rand,initial_angle_random);\n"; + code += " CUSTOM.x=base_angle*3.1416/180.0;\n"; //angle + code += " CUSTOM.y=0.0;\n"; //phase + code += " CUSTOM.z=(anim_offset+tex_anim_offset)*mix(1.0,anim_offset_rand,anim_offset_random);\n"; //animation offset (0-1) + switch (emission_shape) { + case EMISSION_SHAPE_POINT: { + //do none + } break; + case EMISSION_SHAPE_SPHERE: { + code += " TRANSFORM[3].xyz = normalize(vec3(rand_from_seed(alt_seed) * 2.0 - 1.0, rand_from_seed(alt_seed) * 2.0-1.0, rand_from_seed(alt_seed) * 2.0-1.0 ))*emission_sphere_radius;\n"; + } break; + case EMISSION_SHAPE_BOX: { + code += " TRANSFORM[3].xyz = vec3(rand_from_seed(alt_seed) * 2.0 - 1.0, rand_from_seed(alt_seed) * 2.0-1.0, rand_from_seed(alt_seed) * 2.0-1.0)*emission_box_extents;\n"; + } break; + case EMISSION_SHAPE_POINTS: + case EMISSION_SHAPE_DIRECTED_POINTS: { + code += " int point = min(emission_texture_point_count-1,int(rand_from_seed(alt_seed) * float(emission_texture_point_count)));\n"; + code += " ivec2 tex_size = textureSize( emission_texture_points, 0 );\n"; + code += " ivec2 tex_ofs = ivec2( point % tex_size.x, point / tex_size.x );\n"; + code += " TRANSFORM[3].xyz = texelFetch(emission_texture_points, tex_ofs,0).xyz;\n"; + if (emission_shape == EMISSION_SHAPE_DIRECTED_POINTS) { + code += " vec3 normal = texelFetch(emission_texture_normal, tex_ofs,0).xyz;\n"; + code += " vec3 v0 = abs(normal.z) < 0.999 ? vec3(0.0, 0.0, 1.0) : vec3(0, 1.0, 0.0);\n"; + code += " vec3 tangent = normalize(cross(v0, normal));\n"; + code += " vec3 bitangent = normalize(cross(tangent, normal));\n"; + code += " VELOCITY = mat3(tangent,bitangent,normal) * VELOCITY;\n"; + } + } break; + } + code += " VELOCITY = (EMISSION_TRANSFORM * vec4(VELOCITY,0.0)).xyz;\n"; + code += " TRANSFORM = EMISSION_TRANSFORM * TRANSFORM;\n"; + + code += " } else {\n"; + + code += " CUSTOM.y+=DELTA/LIFETIME;\n"; + if (tex_parameters[PARAM_INITIAL_LINEAR_VELOCITY].is_valid()) + code += " float tex_linear_velocity = textureLod(linear_velocity_texture,vec2(CUSTOM.y,0.0),0.0).r;\n"; + else + code += " float tex_linear_velocity = 0.0;\n"; + + if (tex_parameters[PARAM_ORBIT_VELOCITY].is_valid()) + code += " float tex_orbit_velocity = textureLod(orbit_velocity_texture,vec2(CUSTOM.y,0.0),0.0).r;\n"; + else + code += " float tex_orbit_velocity = 0.0;\n"; + + if (tex_parameters[PARAM_ANGULAR_VELOCITY].is_valid()) + code += " float tex_angular_velocity = textureLod(angular_velocity_texture,vec2(CUSTOM.y,0.0),0.0).r;\n"; + else + code += " float tex_angular_velocity = 0.0;\n"; + + if (tex_parameters[PARAM_LINEAR_ACCEL].is_valid()) + code += " float tex_linear_accel = textureLod(linear_accel_texture,vec2(CUSTOM.y,0.0),0.0).r;\n"; + else + code += " float tex_linear_accel = 0.0;\n"; + + if (tex_parameters[PARAM_RADIAL_ACCEL].is_valid()) + code += " float tex_radial_accel = textureLod(radial_accel_texture,vec2(CUSTOM.y,0.0),0.0).r;\n"; + else + code += " float tex_radial_accel = 0.0;\n"; + + if (tex_parameters[PARAM_TANGENTIAL_ACCEL].is_valid()) + code += " float tex_tangent_accel = textureLod(tangent_accel_texture,vec2(CUSTOM.y,0.0),0.0).r;\n"; + else + code += " float tex_tangent_accel = 0.0;\n"; + + if (tex_parameters[PARAM_DAMPING].is_valid()) + code += " float tex_damping = textureLod(damping_texture,vec2(CUSTOM.y,0.0),0.0).r;\n"; + else + code += " float tex_damping = 0.0;\n"; + + if (tex_parameters[PARAM_ANGLE].is_valid()) + code += " float tex_angle = textureLod(angle_texture,vec2(CUSTOM.y,0.0),0.0).r;\n"; + else + code += " float tex_angle = 0.0;\n"; + + if (tex_parameters[PARAM_ANIM_SPEED].is_valid()) + code += " float tex_anim_speed = textureLod(anim_speed_texture,vec2(CUSTOM.y,0.0),0.0).r;\n"; + else + code += " float tex_anim_speed = 0.0;\n"; + + if (tex_parameters[PARAM_ANIM_OFFSET].is_valid()) + code += " float tex_anim_offset = textureLod(anim_offset_texture,vec2(CUSTOM.y,0.0),0.0).r;\n"; + else + code += " float tex_anim_offset = 0.0;\n"; + + code += " vec3 force = vec3(0.0); \n"; + code += " vec3 pos = TRANSFORM[3].xyz; \n"; + code += " //apply linear acceleration\n"; + code += " force+=normalize(VELOCITY) * (linear_accel+tex_linear_accel)*mix(1.0,rand_from_seed(alt_seed),linear_accel_random);\n"; + code += " //apply radial acceleration\n"; + code += " vec3 org = vec3(0.0);\n"; + code += " // if (!p_system->local_coordinates)\n"; + code += " //org=p_transform.origin;\n"; + code += " force+=normalize(pos-org) * (radial_accel+tex_radial_accel)*mix(1.0,rand_from_seed(alt_seed),radial_accel_random);\n"; + code += " //apply tangential acceleration;\n"; + code += " force+=normalize(cross(normalize(pos-org),normalize(GRAVITY))) * ((tangent_accel+tex_tangent_accel)*mix(1.0,rand_from_seed(alt_seed),radial_accel_random));\n"; + code += " //apply attractor forces\n"; + code += " VELOCITY+=force * DELTA;\n"; + if (tex_parameters[PARAM_INITIAL_LINEAR_VELOCITY].is_valid()) + code += " VELOCITY=normalize(VELOCITY)*tex_linear_velocity;\n"; + code += " if (damping+tex_damping>0.0) {\n"; + code += " \n"; + code += " float v = length(VELOCITY);\n"; + code += " float damp = (damping+tex_damping)*mix(1.0,rand_from_seed(alt_seed),damping_random);\n"; + code += " v -= damp * DELTA;\n"; + code += " if (v<0.0) {\n"; + code += " VELOCITY=vec3(0.0);\n"; + code += " } else {\n"; + code += " VELOCITY=normalize(VELOCITY) * v;\n"; + code += " }\n"; + code += " }\n"; + code += " float base_angle=(initial_angle+tex_angle)*mix(1.0,angle_rand,initial_angle_random)*3.1416/180.0;\n"; + code += " CUSTOM.x=((base_angle+tex_angle)+CUSTOM.y*LIFETIME*(angular_velocity+tex_angular_velocity)*mix(1.0,rand_from_seed(alt_seed)*2.0-1.0,angular_velocity_random))*3.1416/180.0;\n"; //angle + code += " CUSTOM.z=(anim_offset+tex_anim_offset)*mix(1.0,anim_offset_rand,anim_offset_random)+CUSTOM.y*LIFETIME*(anim_speed+tex_anim_speed)*mix(1.0,rand_from_seed(alt_seed),anim_speed_random);\n"; //angle + code += " }\n"; + //apply color + //apply hue rotation + if (tex_parameters[PARAM_SCALE].is_valid()) + code += " float tex_scale = textureLod(scale_texture,vec2(CUSTOM.y,0.0),0.0).r;\n"; + else + code += " float tex_scale = 1.0;\n"; + + if (tex_parameters[PARAM_HUE_VARIATION].is_valid()) + code += " float tex_hue_variation = textureLod(hue_variation_texture,vec2(CUSTOM.y,0.0),0.0).r;\n"; + else + code += " float tex_hue_variation = 0.0;\n"; + + code += " float hue_rot_angle = (hue_variation+tex_hue_variation)*3.1416*2.0*mix(1.0,hue_rot_rand*2.0-1.0,hue_variation_random);\n"; + code += " float hue_rot_c = cos(hue_rot_angle);\n"; + code += " float hue_rot_s = sin(hue_rot_angle);\n"; + code += " mat4 hue_rot_mat = mat4( vec4(0.299, 0.587, 0.114, 0.0),\n"; + code += " vec4(0.299, 0.587, 0.114, 0.0),\n"; + code += " vec4(0.299, 0.587, 0.114, 0.0),\n"; + code += " vec4(0.000, 0.000, 0.000, 1.0)) +\n"; + code += " \n"; + code += " mat4( vec4(0.701, -0.587, -0.114, 0.0),\n"; + code += " vec4(-0.299, 0.413, -0.114, 0.0),\n"; + code += " vec4(-0.300, -0.588, 0.886, 0.0),\n"; + code += " vec4(0.000, 0.000, 0.000, 0.0)) * hue_rot_c +\n"; + code += "\n"; + code += " mat4( vec4(0.168, 0.330, -0.497, 0.0),\n"; + code += " vec4(-0.328, 0.035, 0.292, 0.0),\n"; + code += " vec4(1.250, -1.050, -0.203, 0.0),\n"; + code += " vec4(0.000, 0.000, 0.000, 0.0)) * hue_rot_s;\n"; + if (color_ramp.is_valid()) { + code += " COLOR = textureLod(color_ramp,vec2(CUSTOM.y,0.0),0.0) * hue_rot_mat;\n"; + } else { + code += " COLOR = color_value * hue_rot_mat;\n"; + } + if (trail_color_modifier.is_valid()) { + code += "if (trail_divisor>1) { COLOR*=textureLod(trail_color_modifier,vec2(float(int(NUMBER)%trail_divisor)/float(trail_divisor-1),0.0),0.0); }\n"; + } + code += "\n"; + //orient particle Y towards velocity + if (flags[FLAG_ALIGN_Y_TO_VELOCITY]) { + code += " if (length(VELOCITY)>0.0) {TRANSFORM[1].xyz=normalize(VELOCITY);} else {TRANSFORM[1].xyz=normalize(TRANSFORM[1].xyz);}\n"; + code += " if (TRANSFORM[1].xyz==normalize(TRANSFORM[0].xyz)) {\n"; + code += "\tTRANSFORM[0].xyz=normalize(cross(normalize(TRANSFORM[1].xyz),normalize(TRANSFORM[2].xyz)));\n"; + code += "\tTRANSFORM[2].xyz=normalize(cross(normalize(TRANSFORM[0].xyz),normalize(TRANSFORM[1].xyz)));\n"; + code += " } else {\n"; + code += "\tTRANSFORM[2].xyz=normalize(cross(normalize(TRANSFORM[0].xyz),normalize(TRANSFORM[1].xyz)));\n"; + code += "\tTRANSFORM[0].xyz=normalize(cross(normalize(TRANSFORM[1].xyz),normalize(TRANSFORM[2].xyz)));\n"; + code += " }\n"; + } else { + code += "\tTRANSFORM[0].xyz=normalize(TRANSFORM[0].xyz);\n"; + code += "\tTRANSFORM[1].xyz=normalize(TRANSFORM[1].xyz);\n"; + code += "\tTRANSFORM[2].xyz=normalize(TRANSFORM[2].xyz);\n"; + } + //turn particle by rotation in Y + if (flags[FLAG_ROTATE_Y]) { + code += "\tTRANSFORM = TRANSFORM * mat4( vec4(cos(CUSTOM.x),0.0,-sin(CUSTOM.x),0.0), vec4(0.0,1.0,0.0,0.0),vec4(sin(CUSTOM.x),0.0,cos(CUSTOM.x),0.0),vec4(0.0,0.0,0.0,1.0));\n"; + } + //scale by scale + code += " float base_scale=mix(scale*tex_scale,1.0,scale_random*scale_rand);\n"; + if (trail_size_modifier.is_valid()) { + code += "if (trail_divisor>1) { base_scale*=textureLod(trail_size_modifier,vec2(float(int(NUMBER)%trail_divisor)/float(trail_divisor-1),0.0),0.0).r; } \n"; + } + + code += " TRANSFORM[0].xyz*=base_scale;\n"; + code += " TRANSFORM[1].xyz*=base_scale;\n"; + code += " TRANSFORM[2].xyz*=base_scale;\n"; + code += "}\n"; + code += "\n"; + + ShaderData shader_data; + shader_data.shader = VS::get_singleton()->shader_create(); + shader_data.users = 1; + + VS::get_singleton()->shader_set_code(shader_data.shader, code); + + shader_map[mk] = shader_data; + + VS::get_singleton()->material_set_shader(_get_material(), shader_data.shader); } -void Particles::set_color_phase_pos(int p_phase, float p_pos) { +void ParticlesMaterial::flush_changes() { - ERR_FAIL_INDEX(p_phase,VS::MAX_PARTICLE_COLOR_PHASES); - color_phase[p_phase].pos=p_pos; - VisualServer::get_singleton()->particles_set_color_phase_pos(particles,p_phase,p_pos); + if (material_mutex) + material_mutex->lock(); + while (dirty_materials.first()) { + + dirty_materials.first()->self()->_update_shader(); + } + + if (material_mutex) + material_mutex->unlock(); } -float Particles::get_color_phase_pos(int p_phase) const { - ERR_FAIL_INDEX_V(p_phase,VS::MAX_PARTICLE_COLOR_PHASES,-1); - return color_phase[p_phase].pos; +void ParticlesMaterial::_queue_shader_change() { + + if (material_mutex) + material_mutex->lock(); + + print_line("queuing change"); + if (!element.in_list()) { + print_line("not in list, adding"); + dirty_materials.add(&element); + } + + if (material_mutex) + material_mutex->unlock(); } -void Particles::set_color_phase_color(int p_phase, const Color& p_color) { +bool ParticlesMaterial::_is_shader_dirty() const { + + bool dirty = false; + + if (material_mutex) + material_mutex->lock(); + + dirty = element.in_list(); - ERR_FAIL_INDEX(p_phase,VS::MAX_PARTICLE_COLOR_PHASES); - color_phase[p_phase].color=p_color; - VisualServer::get_singleton()->particles_set_color_phase_color(particles,p_phase,p_color); + if (material_mutex) + material_mutex->unlock(); + return dirty; } -Color Particles::get_color_phase_color(int p_phase) const { - ERR_FAIL_INDEX_V(p_phase,VS::MAX_PARTICLE_COLOR_PHASES,Color()); - return color_phase[p_phase].color; +void ParticlesMaterial::set_spread(float p_spread) { + spread = p_spread; + VisualServer::get_singleton()->material_set_param(_get_material(), shader_names->spread, p_spread); } -void Particles::set_material(const Ref<Material>& p_material) { +float ParticlesMaterial::get_spread() const { - material=p_material; - if(material.is_null()) { - VisualServer::get_singleton()->particles_set_material(particles,RID()); - } else { - VisualServer::get_singleton()->particles_set_material(particles,material->get_rid()); + return spread; +} + +void ParticlesMaterial::set_flatness(float p_flatness) { + + flatness = p_flatness; + VisualServer::get_singleton()->material_set_param(_get_material(), shader_names->flatness, p_flatness); +} +float ParticlesMaterial::get_flatness() const { + + return flatness; +} + +void ParticlesMaterial::set_param(Parameter p_param, float p_value) { + + ERR_FAIL_INDEX(p_param, PARAM_MAX); + + parameters[p_param] = p_value; + + switch (p_param) { + case PARAM_INITIAL_LINEAR_VELOCITY: { + VisualServer::get_singleton()->material_set_param(_get_material(), shader_names->initial_linear_velocity, p_value); + } break; + case PARAM_ANGULAR_VELOCITY: { + VisualServer::get_singleton()->material_set_param(_get_material(), shader_names->angular_velocity, p_value); + } break; + case PARAM_ORBIT_VELOCITY: { + VisualServer::get_singleton()->material_set_param(_get_material(), shader_names->orbit_velocity, p_value); + } break; + case PARAM_LINEAR_ACCEL: { + VisualServer::get_singleton()->material_set_param(_get_material(), shader_names->linear_accel, p_value); + } break; + case PARAM_RADIAL_ACCEL: { + VisualServer::get_singleton()->material_set_param(_get_material(), shader_names->radial_accel, p_value); + } break; + case PARAM_TANGENTIAL_ACCEL: { + VisualServer::get_singleton()->material_set_param(_get_material(), shader_names->tangent_accel, p_value); + } break; + case PARAM_DAMPING: { + VisualServer::get_singleton()->material_set_param(_get_material(), shader_names->damping, p_value); + } break; + case PARAM_ANGLE: { + VisualServer::get_singleton()->material_set_param(_get_material(), shader_names->initial_angle, p_value); + } break; + case PARAM_SCALE: { + VisualServer::get_singleton()->material_set_param(_get_material(), shader_names->scale, p_value); + } break; + case PARAM_HUE_VARIATION: { + VisualServer::get_singleton()->material_set_param(_get_material(), shader_names->hue_variation, p_value); + } break; + case PARAM_ANIM_SPEED: { + VisualServer::get_singleton()->material_set_param(_get_material(), shader_names->anim_speed, p_value); + } break; + case PARAM_ANIM_OFFSET: { + VisualServer::get_singleton()->material_set_param(_get_material(), shader_names->anim_offset, p_value); + } break; + case PARAM_MAX: { + }; } +} +float ParticlesMaterial::get_param(Parameter p_param) const { + + ERR_FAIL_INDEX_V(p_param, PARAM_MAX, 0); + return parameters[p_param]; } -void Particles::setup_timer() { +void ParticlesMaterial::set_param_randomness(Parameter p_param, float p_value) { + + ERR_FAIL_INDEX(p_param, PARAM_MAX); + + randomness[p_param] = p_value; + + switch (p_param) { + case PARAM_INITIAL_LINEAR_VELOCITY: { + VisualServer::get_singleton()->material_set_param(_get_material(), shader_names->initial_linear_velocity_random, p_value); + } break; + case PARAM_ANGULAR_VELOCITY: { + VisualServer::get_singleton()->material_set_param(_get_material(), shader_names->angular_velocity_random, p_value); + } break; + case PARAM_ORBIT_VELOCITY: { + VisualServer::get_singleton()->material_set_param(_get_material(), shader_names->orbit_velocity_random, p_value); + } break; + case PARAM_LINEAR_ACCEL: { + VisualServer::get_singleton()->material_set_param(_get_material(), shader_names->linear_accel_random, p_value); + } break; + case PARAM_RADIAL_ACCEL: { + VisualServer::get_singleton()->material_set_param(_get_material(), shader_names->radial_accel_random, p_value); + } break; + case PARAM_TANGENTIAL_ACCEL: { + VisualServer::get_singleton()->material_set_param(_get_material(), shader_names->tangent_accel_random, p_value); + } break; + case PARAM_DAMPING: { + VisualServer::get_singleton()->material_set_param(_get_material(), shader_names->damping_random, p_value); + } break; + case PARAM_ANGLE: { + VisualServer::get_singleton()->material_set_param(_get_material(), shader_names->initial_angle_random, p_value); + } break; + case PARAM_SCALE: { + VisualServer::get_singleton()->material_set_param(_get_material(), shader_names->scale_random, p_value); + } break; + case PARAM_HUE_VARIATION: { + VisualServer::get_singleton()->material_set_param(_get_material(), shader_names->hue_variation_random, p_value); + } break; + case PARAM_ANIM_SPEED: { + VisualServer::get_singleton()->material_set_param(_get_material(), shader_names->anim_speed_random, p_value); + } break; + case PARAM_ANIM_OFFSET: { + VisualServer::get_singleton()->material_set_param(_get_material(), shader_names->anim_offset_random, p_value); + } break; + case PARAM_MAX: { + }; + } +} +float ParticlesMaterial::get_param_randomness(Parameter p_param) const { - if (emitting && emit_timeout > 0) { + ERR_FAIL_INDEX_V(p_param, PARAM_MAX, 0); - timer->set_wait_time(emit_timeout); - timer->start(); - timer->set_one_shot(true); - }; -}; + return randomness[p_param]; +} -void Particles::set_emit_timeout(float p_timeout) { +static void _adjust_curve_range(const Ref<Texture> &p_texture, float p_min, float p_max) { - emit_timeout = p_timeout; - setup_timer(); -}; + Ref<CurveTexture> curve = p_texture; + if (!curve.is_valid()) + return; -float Particles::get_emit_timeout() const { + if (curve->get_max() == 1.0) { + curve->set_max(p_max); + } + if (curve->get_min() == 0.0) { + curve->set_min(p_min); + } +} - return emit_timeout; -}; +void ParticlesMaterial::set_param_texture(Parameter p_param, const Ref<Texture> &p_texture) { + + ERR_FAIL_INDEX(p_param, PARAM_MAX); + + tex_parameters[p_param] = p_texture; + + switch (p_param) { + case PARAM_INITIAL_LINEAR_VELOCITY: { + //do none for this one + } break; + case PARAM_ANGULAR_VELOCITY: { + VisualServer::get_singleton()->material_set_param(_get_material(), shader_names->angular_velocity_texture, p_texture); + _adjust_curve_range(p_texture, -360, 360); + } break; + case PARAM_ORBIT_VELOCITY: { + VisualServer::get_singleton()->material_set_param(_get_material(), shader_names->orbit_velocity_texture, p_texture); + _adjust_curve_range(p_texture, -500, 500); + } break; + case PARAM_LINEAR_ACCEL: { + VisualServer::get_singleton()->material_set_param(_get_material(), shader_names->linear_accel_texture, p_texture); + _adjust_curve_range(p_texture, -200, 200); + } break; + case PARAM_RADIAL_ACCEL: { + VisualServer::get_singleton()->material_set_param(_get_material(), shader_names->radial_accel_texture, p_texture); + _adjust_curve_range(p_texture, -200, 200); + } break; + case PARAM_TANGENTIAL_ACCEL: { + VisualServer::get_singleton()->material_set_param(_get_material(), shader_names->tangent_accel_texture, p_texture); + _adjust_curve_range(p_texture, -200, 200); + } break; + case PARAM_DAMPING: { + VisualServer::get_singleton()->material_set_param(_get_material(), shader_names->damping_texture, p_texture); + _adjust_curve_range(p_texture, 0, 100); + } break; + case PARAM_ANGLE: { + VisualServer::get_singleton()->material_set_param(_get_material(), shader_names->angle_texture, p_texture); + _adjust_curve_range(p_texture, -360, 360); + } break; + case PARAM_SCALE: { + VisualServer::get_singleton()->material_set_param(_get_material(), shader_names->scale_texture, p_texture); + + Ref<CurveTexture> curve = p_texture; + if (curve.is_valid()) { + if (curve->get_min() == 0 && curve->get_max() == 1) { + + curve->set_max(32); + PoolVector<Vector2> points; + points.push_back(Vector2(0, 1)); + points.push_back(Vector2(1, 1)); + curve->set_points(points); + } + } + } break; + case PARAM_HUE_VARIATION: { + VisualServer::get_singleton()->material_set_param(_get_material(), shader_names->hue_variation_texture, p_texture); + _adjust_curve_range(p_texture, -1, 1); + } break; + case PARAM_ANIM_SPEED: { + VisualServer::get_singleton()->material_set_param(_get_material(), shader_names->anim_speed_texture, p_texture); + _adjust_curve_range(p_texture, 0, 200); + } break; + case PARAM_ANIM_OFFSET: { + VisualServer::get_singleton()->material_set_param(_get_material(), shader_names->anim_offset_texture, p_texture); + } break; + case PARAM_MAX: { + }; + } + + _queue_shader_change(); +} +Ref<Texture> ParticlesMaterial::get_param_texture(Parameter p_param) const { -Ref<Material> Particles::get_material() const { + ERR_FAIL_INDEX_V(p_param, PARAM_MAX, Ref<Texture>()); - return material; + return tex_parameters[p_param]; } -void Particles::set_height_from_velocity(bool p_enable) { +void ParticlesMaterial::set_color(const Color &p_color) { - height_from_velocity=p_enable; - VisualServer::get_singleton()->particles_set_height_from_velocity(particles,height_from_velocity); + VisualServer::get_singleton()->material_set_param(_get_material(), shader_names->color, p_color); + color = p_color; } -bool Particles::has_height_from_velocity() const { +Color ParticlesMaterial::get_color() const { - return height_from_velocity; + return color; } -void Particles::set_color_phases(int p_phases) { +void ParticlesMaterial::set_color_ramp(const Ref<Texture> &p_texture) { - color_phase_count=p_phases; - VisualServer::get_singleton()->particles_set_color_phases(particles,p_phases); + color_ramp = p_texture; + VisualServer::get_singleton()->material_set_param(_get_material(), shader_names->color_ramp, p_texture); + _queue_shader_change(); + _change_notify(); } -int Particles::get_color_phases() const{ +Ref<Texture> ParticlesMaterial::get_color_ramp() const { - return color_phase_count; + return color_ramp; } -bool Particles::_can_gizmo_scale() const { +void ParticlesMaterial::set_flag(Flags p_flag, bool p_enable) { + ERR_FAIL_INDEX(p_flag, FLAG_MAX); + flags[p_flag] = p_enable; + _queue_shader_change(); +} - return false; +bool ParticlesMaterial::get_flag(Flags p_flag) const { + ERR_FAIL_INDEX_V(p_flag, FLAG_MAX, false); + return flags[p_flag]; } -void Particles::set_use_local_coordinates(bool p_use) { +void ParticlesMaterial::set_emission_shape(EmissionShape p_shape) { - local_coordinates=p_use; - VisualServer::get_singleton()->particles_set_use_local_coordinates(particles,local_coordinates); + emission_shape = p_shape; + _change_notify(); + _queue_shader_change(); } -bool Particles::is_using_local_coordinates() const{ +void ParticlesMaterial::set_emission_sphere_radius(float p_radius) { - return local_coordinates; + emission_sphere_radius = p_radius; + VisualServer::get_singleton()->material_set_param(_get_material(), shader_names->emission_sphere_radius, p_radius); } +void ParticlesMaterial::set_emission_box_extents(Vector3 p_extents) { -RES Particles::_get_gizmo_geometry() const { + emission_box_extents = p_extents; + VisualServer::get_singleton()->material_set_param(_get_material(), shader_names->emission_box_extents, p_extents); +} - Ref<SurfaceTool> surface_tool( memnew( SurfaceTool )); +void ParticlesMaterial::set_emission_point_texture(const Ref<Texture> &p_points) { - Ref<FixedSpatialMaterial> mat( memnew( FixedSpatialMaterial )); + emission_point_texture = p_points; + RID texture; + if (p_points.is_valid()) + texture = p_points->get_rid(); + VisualServer::get_singleton()->material_set_param(_get_material(), shader_names->emission_texture_points, texture); +} - mat->set_parameter( FixedSpatialMaterial::PARAM_DIFFUSE,Color(0.0,0.6,0.7,0.2) ); - mat->set_parameter( FixedSpatialMaterial::PARAM_EMISSION,Color(0.5,0.7,0.8) ); - mat->set_blend_mode( Material::BLEND_MODE_ADD ); - mat->set_flag(Material::FLAG_DOUBLE_SIDED,true); - //mat->set_hint(Material::HINT_NO_DEPTH_DRAW,true); +void ParticlesMaterial::set_emission_normal_texture(const Ref<Texture> &p_normals) { + emission_normal_texture = p_normals; + RID texture; + if (p_normals.is_valid()) + texture = p_normals->get_rid(); + VisualServer::get_singleton()->material_set_param(_get_material(), shader_names->emission_texture_normal, texture); +} - surface_tool->begin(Mesh::PRIMITIVE_TRIANGLES); - surface_tool->set_material(mat); +void ParticlesMaterial::set_emission_point_count(int p_count) { - int sides=16; - int sections=24; + emission_point_count = p_count; + VisualServer::get_singleton()->material_set_param(_get_material(), shader_names->emission_texture_point_count, p_count); +} - //float len=1; - float deg=Math::deg2rad(var[VAR_SPREAD]*180); - if (deg==180) - deg=179.5; +ParticlesMaterial::EmissionShape ParticlesMaterial::get_emission_shape() const { - Vector3 to=Vector3(0,0,-1); + return emission_shape; +} - for(int j=0;j<sections;j++) { +float ParticlesMaterial::get_emission_sphere_radius() const { - Vector3 p1=Matrix3(Vector3(1,0,0),deg*j/sections).xform(to); - Vector3 p2=Matrix3(Vector3(1,0,0),deg*(j+1)/sections).xform(to); + return emission_sphere_radius; +} +Vector3 ParticlesMaterial::get_emission_box_extents() const { - for(int i=0;i<sides;i++) { + return emission_box_extents; +} +Ref<Texture> ParticlesMaterial::get_emission_point_texture() const { - Vector3 p1r = Matrix3(Vector3(0,0,1),Math_PI*2*float(i)/sides).xform(p1); - Vector3 p1s = Matrix3(Vector3(0,0,1),Math_PI*2*float(i+1)/sides).xform(p1); - Vector3 p2s = Matrix3(Vector3(0,0,1),Math_PI*2*float(i+1)/sides).xform(p2); - Vector3 p2r = Matrix3(Vector3(0,0,1),Math_PI*2*float(i)/sides).xform(p2); + return emission_point_texture; +} +Ref<Texture> ParticlesMaterial::get_emission_normal_texture() const { - surface_tool->add_normal(p1r.normalized()); - surface_tool->add_vertex(p1r); - surface_tool->add_normal(p1s.normalized()); - surface_tool->add_vertex(p1s); - surface_tool->add_normal(p2s.normalized()); - surface_tool->add_vertex(p2s); + return emission_normal_texture; +} - surface_tool->add_normal(p1r.normalized()); - surface_tool->add_vertex(p1r); - surface_tool->add_normal(p2s.normalized()); - surface_tool->add_vertex(p2s); - surface_tool->add_normal(p2r.normalized()); - surface_tool->add_vertex(p2r); +int ParticlesMaterial::get_emission_point_count() const { - if (j==sections-1) { + return emission_point_count; +} - surface_tool->add_normal(p2r.normalized()); - surface_tool->add_vertex(p2r); - surface_tool->add_normal(p2s.normalized()); - surface_tool->add_vertex(p2s); - surface_tool->add_normal(Vector3(0,0,1)); - surface_tool->add_vertex(Vector3()); - } - } - } +void ParticlesMaterial::set_trail_divisor(int p_divisor) { + VisualServer::get_singleton()->material_set_param(_get_material(), shader_names->trail_divisor, p_divisor); + trail_divisor = p_divisor; + _change_notify(); +} - Ref<Mesh> mesh = surface_tool->commit(); +int ParticlesMaterial::get_trail_divisor() const { - Ref<FixedSpatialMaterial> mat_aabb( memnew( FixedSpatialMaterial )); + return trail_divisor; +} - mat_aabb->set_parameter( FixedSpatialMaterial::PARAM_DIFFUSE,Color(0.8,0.8,0.9,0.7) ); - mat_aabb->set_line_width(3); - mat_aabb->set_flag( Material::FLAG_UNSHADED, true ); +void ParticlesMaterial::set_trail_size_modifier(const Ref<CurveTexture> &p_trail_size_modifier) { - surface_tool->begin(Mesh::PRIMITIVE_LINES); - surface_tool->set_material(mat_aabb); + trail_size_modifier = p_trail_size_modifier; - for(int i=0;i<12;i++) { + Ref<CurveTexture> curve = trail_size_modifier; + if (curve.is_valid()) { + if (curve->get_min() == 0 && curve->get_max() == 1) { - Vector3 f,t; - visibility_aabb.get_edge(i,f,t); - surface_tool->add_vertex(f); - surface_tool->add_vertex(t); + curve->set_max(32); + PoolVector<Vector2> points; + points.push_back(Vector2(0, 1)); + points.push_back(Vector2(1, 1)); + curve->set_points(points); + } } - return surface_tool->commit(mesh); - + RID texture; + if (p_trail_size_modifier.is_valid()) + texture = p_trail_size_modifier->get_rid(); + VisualServer::get_singleton()->material_set_param(_get_material(), shader_names->trail_size_modifier, texture); + _queue_shader_change(); } +Ref<CurveTexture> ParticlesMaterial::get_trail_size_modifier() const { -void Particles::_bind_methods() { + return trail_size_modifier; +} - ClassDB::bind_method(D_METHOD("set_amount","amount"),&Particles::set_amount); - ClassDB::bind_method(D_METHOD("get_amount"),&Particles::get_amount); - ClassDB::bind_method(D_METHOD("set_emitting","enabled"),&Particles::set_emitting); - ClassDB::bind_method(D_METHOD("is_emitting"),&Particles::is_emitting); - ClassDB::bind_method(D_METHOD("set_visibility_aabb","aabb"),&Particles::set_visibility_aabb); - ClassDB::bind_method(D_METHOD("get_visibility_aabb"),&Particles::get_visibility_aabb); - ClassDB::bind_method(D_METHOD("set_emission_half_extents","half_extents"),&Particles::set_emission_half_extents); - ClassDB::bind_method(D_METHOD("get_emission_half_extents"),&Particles::get_emission_half_extents); - ClassDB::bind_method(D_METHOD("set_emission_base_velocity","base_velocity"),&Particles::set_emission_base_velocity); - ClassDB::bind_method(D_METHOD("get_emission_base_velocity"),&Particles::get_emission_base_velocity); - ClassDB::bind_method(D_METHOD("set_emission_points","points"),&Particles::set_emission_points); - ClassDB::bind_method(D_METHOD("get_emission_points"),&Particles::get_emission_points); - ClassDB::bind_method(D_METHOD("set_gravity_normal","normal"),&Particles::set_gravity_normal); - ClassDB::bind_method(D_METHOD("get_gravity_normal"),&Particles::get_gravity_normal); - ClassDB::bind_method(D_METHOD("set_variable","variable","value"),&Particles::set_variable); - ClassDB::bind_method(D_METHOD("get_variable","variable"),&Particles::get_variable); - ClassDB::bind_method(D_METHOD("set_randomness","variable","randomness"),&Particles::set_randomness); - ClassDB::bind_method(D_METHOD("get_randomness","variable"),&Particles::get_randomness); - ClassDB::bind_method(D_METHOD("set_color_phase_pos","phase","pos"),&Particles::set_color_phase_pos); - ClassDB::bind_method(D_METHOD("get_color_phase_pos","phase"),&Particles::get_color_phase_pos); - ClassDB::bind_method(D_METHOD("set_color_phase_color","phase","color"),&Particles::set_color_phase_color); - ClassDB::bind_method(D_METHOD("get_color_phase_color","phase"),&Particles::get_color_phase_color); - ClassDB::bind_method(D_METHOD("set_material","material:Material"),&Particles::set_material); - ClassDB::bind_method(D_METHOD("get_material:Material"),&Particles::get_material); - ClassDB::bind_method(D_METHOD("set_emit_timeout","timeout"),&Particles::set_emit_timeout); - ClassDB::bind_method(D_METHOD("get_emit_timeout"),&Particles::get_emit_timeout); - ClassDB::bind_method(D_METHOD("set_height_from_velocity","enable"),&Particles::set_height_from_velocity); - ClassDB::bind_method(D_METHOD("has_height_from_velocity"),&Particles::has_height_from_velocity); - ClassDB::bind_method(D_METHOD("set_use_local_coordinates","enable"),&Particles::set_use_local_coordinates); - ClassDB::bind_method(D_METHOD("is_using_local_coordinates"),&Particles::is_using_local_coordinates); - - ClassDB::bind_method(D_METHOD("set_color_phases","count"),&Particles::set_color_phases); - ClassDB::bind_method(D_METHOD("get_color_phases"),&Particles::get_color_phases); - - ADD_PROPERTY( PropertyInfo( Variant::OBJECT, "material", PROPERTY_HINT_RESOURCE_TYPE, "Material" ), "set_material", "get_material") ; - - ADD_PROPERTY( PropertyInfo( Variant::INT, "amount", PROPERTY_HINT_RANGE, "1,1024,1" ), "set_amount", "get_amount") ; - ADD_PROPERTY( PropertyInfo( Variant::BOOL, "emitting" ), "set_emitting", "is_emitting") ; - ADD_PROPERTY( PropertyInfo( Variant::_AABB, "visibility" ), "set_visibility_aabb", "get_visibility_aabb") ; - ADD_PROPERTY( PropertyInfo( Variant::VECTOR3, "emission_extents" ), "set_emission_half_extents", "get_emission_half_extents") ; - ADD_PROPERTY( PropertyInfo( Variant::VECTOR3, "emission_base_velocity" ), "set_emission_base_velocity", "get_emission_base_velocity") ; - ADD_PROPERTY( PropertyInfo( Variant::VECTOR3_ARRAY, "emission_points" ), "set_emission_points", "get_emission_points") ; - ADD_PROPERTY( PropertyInfo( Variant::VECTOR3, "gravity_normal" ), "set_gravity_normal", "get_gravity_normal") ; - ADD_PROPERTY( PropertyInfo( Variant::BOOL, "local_coords" ), "set_use_local_coordinates", "is_using_local_coordinates") ; - ADD_PROPERTY( PropertyInfo( Variant::REAL, "emit_timeout",PROPERTY_HINT_RANGE,"0,256,0.01"), "set_emit_timeout", "get_emit_timeout") ; - - - ADD_PROPERTYI( PropertyInfo( Variant::REAL, "vars/lifetime", PROPERTY_HINT_RANGE,"0.1,60,0.01"), "set_variable", "get_variable", VAR_LIFETIME ); - ADD_PROPERTYI( PropertyInfo( Variant::REAL, "vars/spread", PROPERTY_HINT_RANGE,"0,1,0.01"), "set_variable", "get_variable", VAR_SPREAD ); - ADD_PROPERTYI( PropertyInfo( Variant::REAL, "vars/gravity", PROPERTY_HINT_RANGE,"-48,48,0.01"), "set_variable", "get_variable", VAR_GRAVITY ); - ADD_PROPERTYI( PropertyInfo( Variant::REAL, "vars/linear_vel", PROPERTY_HINT_RANGE,"-100,100,0.01"), "set_variable", "get_variable", VAR_LINEAR_VELOCITY ); - ADD_PROPERTYI( PropertyInfo( Variant::REAL, "vars/angular_vel", PROPERTY_HINT_RANGE,"-100,100,0.01"), "set_variable", "get_variable", VAR_ANGULAR_VELOCITY ); - ADD_PROPERTYI( PropertyInfo( Variant::REAL, "vars/linear_accel", PROPERTY_HINT_RANGE,"-100,100,0.01"), "set_variable", "get_variable", VAR_LINEAR_ACCELERATION ); - ADD_PROPERTYI( PropertyInfo( Variant::REAL, "vars/radial_accel", PROPERTY_HINT_RANGE,"-100,100,0.01"), "set_variable", "get_variable", VAR_DRAG ); - ADD_PROPERTYI( PropertyInfo( Variant::REAL, "vars/tan_accel", PROPERTY_HINT_RANGE,"-100,100,0.01"), "set_variable", "get_variable", VAR_TANGENTIAL_ACCELERATION ); - ADD_PROPERTYI( PropertyInfo( Variant::REAL, "vars/damping", PROPERTY_HINT_RANGE,"0,128,0.01"), "set_variable", "get_variable", VAR_DAMPING ); - ADD_PROPERTYI( PropertyInfo( Variant::REAL, "vars/initial_size", PROPERTY_HINT_RANGE,"0,100,0.01"), "set_variable", "get_variable", VAR_INITIAL_SIZE ); - ADD_PROPERTYI( PropertyInfo( Variant::REAL, "vars/final_size", PROPERTY_HINT_RANGE,"0,100,0.01"), "set_variable", "get_variable", VAR_FINAL_SIZE ); - ADD_PROPERTYI( PropertyInfo( Variant::REAL, "vars/initial_angle",PROPERTY_HINT_RANGE,"0,1,0.01"), "set_variable", "get_variable", VAR_INITIAL_ANGLE ); - ADD_PROPERTY( PropertyInfo( Variant::BOOL, "vars/height_from_velocity"), "set_height_from_velocity", "has_height_from_velocity") ; - ADD_PROPERTYI( PropertyInfo( Variant::REAL, "vars/height",PROPERTY_HINT_RANGE,"0,4096,0.01"), "set_variable", "get_variable", VAR_HEIGHT); - ADD_PROPERTYI( PropertyInfo( Variant::REAL, "vars/height_speed_scale",PROPERTY_HINT_RANGE,"0,4096,0.01"), "set_variable", "get_variable", VAR_HEIGHT_SPEED_SCALE ); - - for(int i=0;i<VAR_MAX;i++) - ADD_PROPERTYI( PropertyInfo( Variant::REAL, _rand_names[i], PROPERTY_HINT_RANGE,"-16.0,16.0,0.01"),"set_randomness", "get_randomness",_var_indices[i] ); - - - ADD_PROPERTY( PropertyInfo( Variant::INT, "color_phases/count",PROPERTY_HINT_RANGE,"0,4,1"), "set_color_phases", "get_color_phases"); - - for(int i=0;i<VS::MAX_PARTICLE_COLOR_PHASES;i++) { - String phase="phase_"+itos(i)+"/"; - ADD_PROPERTYI( PropertyInfo( Variant::REAL, phase+"pos", PROPERTY_HINT_RANGE,"0,1,0.01"),"set_color_phase_pos","get_color_phase_pos",i ); - ADD_PROPERTYI( PropertyInfo( Variant::COLOR, phase+"color"),"set_color_phase_color","get_color_phase_color",i ); - } +void ParticlesMaterial::set_trail_color_modifier(const Ref<GradientTexture> &p_trail_color_modifier) { + + trail_color_modifier = p_trail_color_modifier; + RID texture; + if (p_trail_color_modifier.is_valid()) + texture = p_trail_color_modifier->get_rid(); + VisualServer::get_singleton()->material_set_param(_get_material(), shader_names->trail_color_modifier, texture); + _queue_shader_change(); +} - BIND_CONSTANT( VAR_LIFETIME ); - BIND_CONSTANT( VAR_SPREAD ); - BIND_CONSTANT( VAR_GRAVITY ); - BIND_CONSTANT( VAR_LINEAR_VELOCITY ); - BIND_CONSTANT( VAR_ANGULAR_VELOCITY ); - BIND_CONSTANT( VAR_LINEAR_ACCELERATION ); - BIND_CONSTANT( VAR_DRAG ); - BIND_CONSTANT( VAR_TANGENTIAL_ACCELERATION ); - BIND_CONSTANT( VAR_INITIAL_SIZE ); - BIND_CONSTANT( VAR_FINAL_SIZE ); - BIND_CONSTANT( VAR_INITIAL_ANGLE ); - BIND_CONSTANT( VAR_HEIGHT ); - BIND_CONSTANT( VAR_HEIGHT_SPEED_SCALE ); - BIND_CONSTANT( VAR_MAX ); +Ref<GradientTexture> ParticlesMaterial::get_trail_color_modifier() const { + return trail_color_modifier; } -Particles::Particles() { +void ParticlesMaterial::_validate_property(PropertyInfo &property) const { - particles = VisualServer::get_singleton()->particles_create(); - timer = memnew(Timer); - add_child(timer); - emit_timeout = 0; + if (property.name == "color" && color_ramp.is_valid()) { + property.usage = 0; + } - set_amount(64); - set_emitting(true); - set_visibility_aabb(AABB( Vector3(-4,-4,-4), Vector3(8,8,8) ) ); + if (property.name == "emission_sphere_radius" && emission_shape != EMISSION_SHAPE_SPHERE) { + property.usage = 0; + } - for (int i=0;i<VAR_MAX;i++) { - set_randomness((Variable)i,0.0); + if (property.name == "emission_box_extents" && emission_shape != EMISSION_SHAPE_BOX) { + property.usage = 0; } - set_variable( VAR_LIFETIME, 5.0); - set_variable( VAR_SPREAD, 0.2); - set_variable( VAR_GRAVITY, 9.8); - set_variable( VAR_LINEAR_VELOCITY, 0.2); - set_variable( VAR_ANGULAR_VELOCITY, 0.0); - set_variable( VAR_LINEAR_ACCELERATION, 0.0); - set_variable( VAR_DRAG, 0.0); - set_variable( VAR_TANGENTIAL_ACCELERATION, 0.0); - set_variable( VAR_DAMPING, 0.0); - set_variable( VAR_INITIAL_SIZE, 1.0); - set_variable( VAR_FINAL_SIZE, 1.0); - set_variable( VAR_INITIAL_ANGLE, 0.0); - set_variable( VAR_HEIGHT, 1.0); - set_variable( VAR_HEIGHT_SPEED_SCALE, 0.0); - - color_phase_count=0; - - set_color_phase_pos(0,0.0); - set_color_phase_pos(1,1.0); - set_color_phase_pos(2,1.0); - set_color_phase_pos(3,1.0); - - set_color_phase_color(0,Color(1,1,1)); - set_color_phase_color(1,Color(0,0,0)); - set_color_phase_color(2,Color(0,0,0)); - set_color_phase_color(3,Color(0,0,0)); - - set_gravity_normal(Vector3(0,-1.0,0)); - set_emission_half_extents(Vector3(0.1,0.1,0.1)); - - height_from_velocity=false; - - Vector<Variant> pars; - pars.push_back(false); - timer->connect("timeout", this, "set_emitting", pars); - set_base(particles); - local_coordinates=false; + if (property.name == "emission_point_texture" && (emission_shape != EMISSION_SHAPE_POINTS && emission_shape != EMISSION_SHAPE_DIRECTED_POINTS)) { + property.usage = 0; + } + + if (property.name == "emission_normal_texture" && emission_shape != EMISSION_SHAPE_DIRECTED_POINTS) { + property.usage = 0; + } + + if (property.name == "emission_point_count" && (emission_shape != EMISSION_SHAPE_POINTS && emission_shape != EMISSION_SHAPE_DIRECTED_POINTS)) { + property.usage = 0; + } } +void ParticlesMaterial::_bind_methods() { + + ClassDB::bind_method(D_METHOD("set_spread", "degrees"), &ParticlesMaterial::set_spread); + ClassDB::bind_method(D_METHOD("get_spread"), &ParticlesMaterial::get_spread); + + ClassDB::bind_method(D_METHOD("set_flatness", "amount"), &ParticlesMaterial::set_flatness); + ClassDB::bind_method(D_METHOD("get_flatness"), &ParticlesMaterial::get_flatness); + + ClassDB::bind_method(D_METHOD("set_param", "param", "value"), &ParticlesMaterial::set_param); + ClassDB::bind_method(D_METHOD("get_param", "param"), &ParticlesMaterial::get_param); + + ClassDB::bind_method(D_METHOD("set_param_randomness", "param", "randomness"), &ParticlesMaterial::set_param_randomness); + ClassDB::bind_method(D_METHOD("get_param_randomness", "param"), &ParticlesMaterial::get_param_randomness); + + ClassDB::bind_method(D_METHOD("set_param_texture", "param", "texture"), &ParticlesMaterial::set_param_texture); + ClassDB::bind_method(D_METHOD("get_param_texture", "param"), &ParticlesMaterial::get_param_texture); + + ClassDB::bind_method(D_METHOD("set_color", "color"), &ParticlesMaterial::set_color); + ClassDB::bind_method(D_METHOD("get_color"), &ParticlesMaterial::get_color); + + ClassDB::bind_method(D_METHOD("set_color_ramp", "ramp:Texture"), &ParticlesMaterial::set_color_ramp); + ClassDB::bind_method(D_METHOD("get_color_ramp:Texture"), &ParticlesMaterial::get_color_ramp); + + ClassDB::bind_method(D_METHOD("set_flag", "flag", "enable"), &ParticlesMaterial::set_flag); + ClassDB::bind_method(D_METHOD("get_flag", "flag"), &ParticlesMaterial::get_flag); + + ClassDB::bind_method(D_METHOD("set_emission_shape", "shape"), &ParticlesMaterial::set_emission_shape); + ClassDB::bind_method(D_METHOD("get_emission_shape"), &ParticlesMaterial::get_emission_shape); + + ClassDB::bind_method(D_METHOD("set_emission_sphere_radius", "radius"), &ParticlesMaterial::set_emission_sphere_radius); + ClassDB::bind_method(D_METHOD("get_emission_sphere_radius"), &ParticlesMaterial::get_emission_sphere_radius); + + ClassDB::bind_method(D_METHOD("set_emission_box_extents", "extents"), &ParticlesMaterial::set_emission_box_extents); + ClassDB::bind_method(D_METHOD("get_emission_box_extents"), &ParticlesMaterial::get_emission_box_extents); + + ClassDB::bind_method(D_METHOD("set_emission_point_texture", "texture:Texture"), &ParticlesMaterial::set_emission_point_texture); + ClassDB::bind_method(D_METHOD("get_emission_point_texture:Texture"), &ParticlesMaterial::get_emission_point_texture); + + ClassDB::bind_method(D_METHOD("set_emission_normal_texture", "texture:Texture"), &ParticlesMaterial::set_emission_normal_texture); + ClassDB::bind_method(D_METHOD("get_emission_normal_texture:Texture"), &ParticlesMaterial::get_emission_normal_texture); + + ClassDB::bind_method(D_METHOD("set_emission_point_count", "point_count"), &ParticlesMaterial::set_emission_point_count); + ClassDB::bind_method(D_METHOD("get_emission_point_count"), &ParticlesMaterial::get_emission_point_count); + + ClassDB::bind_method(D_METHOD("set_trail_divisor", "divisor"), &ParticlesMaterial::set_trail_divisor); + ClassDB::bind_method(D_METHOD("get_trail_divisor"), &ParticlesMaterial::get_trail_divisor); + + ClassDB::bind_method(D_METHOD("set_trail_size_modifier", "texture:CurveTexture"), &ParticlesMaterial::set_trail_size_modifier); + ClassDB::bind_method(D_METHOD("get_trail_size_modifier:CurveTexture"), &ParticlesMaterial::get_trail_size_modifier); + + ClassDB::bind_method(D_METHOD("set_trail_color_modifier", "texture:GradientTexture"), &ParticlesMaterial::set_trail_color_modifier); + ClassDB::bind_method(D_METHOD("get_trail_color_modifier:GradientTexture"), &ParticlesMaterial::get_trail_color_modifier); + + ADD_GROUP("Trail", "trail_"); + ADD_PROPERTY(PropertyInfo(Variant::INT, "trail_divisor", PROPERTY_HINT_RANGE, "1,1000000,1"), "set_trail_divisor", "get_trail_divisor"); + ADD_PROPERTY(PropertyInfo(Variant::OBJECT, "trail_size_modifier", PROPERTY_HINT_RESOURCE_TYPE, "CurveTexture"), "set_trail_size_modifier", "get_trail_size_modifier"); + ADD_PROPERTY(PropertyInfo(Variant::OBJECT, "trail_color_modifier", PROPERTY_HINT_RESOURCE_TYPE, "GradientTexture"), "set_trail_color_modifier", "get_trail_color_modifier"); + ADD_GROUP("Emission Shape", "emission_"); + ADD_PROPERTY(PropertyInfo(Variant::INT, "emission_shape", PROPERTY_HINT_ENUM, "Point,Sphere,Box,Points,Directed Points"), "set_emission_shape", "get_emission_shape"); + ADD_PROPERTY(PropertyInfo(Variant::REAL, "emission_sphere_radius", PROPERTY_HINT_RANGE, "0.01,128,0.01"), "set_emission_sphere_radius", "get_emission_sphere_radius"); + ADD_PROPERTY(PropertyInfo(Variant::VECTOR3, "emission_box_extents"), "set_emission_box_extents", "get_emission_box_extents"); + ADD_PROPERTY(PropertyInfo(Variant::OBJECT, "emission_point_texture", PROPERTY_HINT_RESOURCE_TYPE, "Texture"), "set_emission_point_texture", "get_emission_point_texture"); + ADD_PROPERTY(PropertyInfo(Variant::OBJECT, "emission_normal_texture", PROPERTY_HINT_RESOURCE_TYPE, "Texture"), "set_emission_normal_texture", "get_emission_normal_texture"); + ADD_PROPERTY(PropertyInfo(Variant::INT, "emission_point_count", PROPERTY_HINT_RANGE, "0,1000000,1"), "set_emission_point_count", "get_emission_point_count"); + ADD_GROUP("Flags", "flag_"); + ADD_PROPERTYI(PropertyInfo(Variant::BOOL, "flag_align_y"), "set_flag", "get_flag", FLAG_ALIGN_Y_TO_VELOCITY); + ADD_PROPERTYI(PropertyInfo(Variant::BOOL, "flag_rotate_y"), "set_flag", "get_flag", FLAG_ROTATE_Y); + ADD_GROUP("Spread", ""); + ADD_PROPERTY(PropertyInfo(Variant::REAL, "spread", PROPERTY_HINT_RANGE, "0,180,0.01"), "set_spread", "get_spread"); + ADD_PROPERTY(PropertyInfo(Variant::REAL, "flatness", PROPERTY_HINT_RANGE, "0,1,0.01"), "set_flatness", "get_flatness"); + ADD_GROUP("Initial Velocity", "initial_"); + ADD_PROPERTYI(PropertyInfo(Variant::REAL, "initial_velocity", PROPERTY_HINT_RANGE, "0,1000,0.01"), "set_param", "get_param", PARAM_INITIAL_LINEAR_VELOCITY); + ADD_PROPERTYI(PropertyInfo(Variant::REAL, "initial_velocity_random", PROPERTY_HINT_RANGE, "0,1,0.01"), "set_param_randomness", "get_param_randomness", PARAM_INITIAL_LINEAR_VELOCITY); + ADD_GROUP("Angular Velocity", "angular_"); + ADD_PROPERTYI(PropertyInfo(Variant::REAL, "angular_velocity", PROPERTY_HINT_RANGE, "-360,360,0.01"), "set_param", "get_param", PARAM_ANGULAR_VELOCITY); + ADD_PROPERTYI(PropertyInfo(Variant::REAL, "angular_velocity_random", PROPERTY_HINT_RANGE, "0,1,0.01"), "set_param_randomness", "get_param_randomness", PARAM_ANGULAR_VELOCITY); + ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "angular_velocity_curve", PROPERTY_HINT_RESOURCE_TYPE, "CurveTexture"), "set_param_texture", "get_param_texture", PARAM_ANGULAR_VELOCITY); + ADD_GROUP("Orbit Velocity", "orbit_"); + ADD_PROPERTYI(PropertyInfo(Variant::REAL, "orbit_velocity", PROPERTY_HINT_RANGE, "-1000,1000,0.01"), "set_param", "get_param", PARAM_ORBIT_VELOCITY); + ADD_PROPERTYI(PropertyInfo(Variant::REAL, "orbit_velocity_random", PROPERTY_HINT_RANGE, "0,1,0.01"), "set_param_randomness", "get_param_randomness", PARAM_ORBIT_VELOCITY); + ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "orbit_velocity_curve", PROPERTY_HINT_RESOURCE_TYPE, "CurveTexture"), "set_param_texture", "get_param_texture", PARAM_ORBIT_VELOCITY); + ADD_GROUP("Linear Accel", "linear_"); + ADD_PROPERTYI(PropertyInfo(Variant::REAL, "linear_accel", PROPERTY_HINT_RANGE, "-100,100,0.01"), "set_param", "get_param", PARAM_LINEAR_ACCEL); + ADD_PROPERTYI(PropertyInfo(Variant::REAL, "linear_accel_random", PROPERTY_HINT_RANGE, "0,1,0.01"), "set_param_randomness", "get_param_randomness", PARAM_LINEAR_ACCEL); + ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "linear_accel_curve", PROPERTY_HINT_RESOURCE_TYPE, "CurveTexture"), "set_param_texture", "get_param_texture", PARAM_LINEAR_ACCEL); + ADD_GROUP("Radial Accel", "radial_"); + ADD_PROPERTYI(PropertyInfo(Variant::REAL, "radial_accel", PROPERTY_HINT_RANGE, "-100,100,0.01"), "set_param", "get_param", PARAM_RADIAL_ACCEL); + ADD_PROPERTYI(PropertyInfo(Variant::REAL, "radial_accel_random", PROPERTY_HINT_RANGE, "0,1,0.01"), "set_param_randomness", "get_param_randomness", PARAM_RADIAL_ACCEL); + ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "radial_accel_curve", PROPERTY_HINT_RESOURCE_TYPE, "CurveTexture"), "set_param_texture", "get_param_texture", PARAM_RADIAL_ACCEL); + ADD_GROUP("Tangential Accel", "tangential_"); + ADD_PROPERTYI(PropertyInfo(Variant::REAL, "tangential_accel", PROPERTY_HINT_RANGE, "-100,100,0.01"), "set_param", "get_param", PARAM_TANGENTIAL_ACCEL); + ADD_PROPERTYI(PropertyInfo(Variant::REAL, "tangential_accel_random", PROPERTY_HINT_RANGE, "0,1,0.01"), "set_param_randomness", "get_param_randomness", PARAM_TANGENTIAL_ACCEL); + ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "tangential_accel_curve", PROPERTY_HINT_RESOURCE_TYPE, "CurveTexture"), "set_param_texture", "get_param_texture", PARAM_TANGENTIAL_ACCEL); + ADD_GROUP("Damping", ""); + ADD_PROPERTYI(PropertyInfo(Variant::REAL, "damping", PROPERTY_HINT_RANGE, "0,100,0.01"), "set_param", "get_param", PARAM_DAMPING); + ADD_PROPERTYI(PropertyInfo(Variant::REAL, "damping_random", PROPERTY_HINT_RANGE, "0,1,0.01"), "set_param_randomness", "get_param_randomness", PARAM_DAMPING); + ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "damping_curve", PROPERTY_HINT_RESOURCE_TYPE, "CurveTexture"), "set_param_texture", "get_param_texture", PARAM_DAMPING); + ADD_GROUP("Angle", ""); + ADD_PROPERTYI(PropertyInfo(Variant::REAL, "angle", PROPERTY_HINT_RANGE, "-720,720,0.1"), "set_param", "get_param", PARAM_ANGLE); + ADD_PROPERTYI(PropertyInfo(Variant::REAL, "angle_random", PROPERTY_HINT_RANGE, "0,1,0.01"), "set_param_randomness", "get_param_randomness", PARAM_ANGLE); + ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "angle_curve", PROPERTY_HINT_RESOURCE_TYPE, "CurveTexture"), "set_param_texture", "get_param_texture", PARAM_ANGLE); + ADD_GROUP("Scale", ""); + ADD_PROPERTYI(PropertyInfo(Variant::REAL, "scale", PROPERTY_HINT_RANGE, "0,1000,0.01"), "set_param", "get_param", PARAM_SCALE); + ADD_PROPERTYI(PropertyInfo(Variant::REAL, "scale_random", PROPERTY_HINT_RANGE, "0,1,0.01"), "set_param_randomness", "get_param_randomness", PARAM_SCALE); + ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "scale_curve", PROPERTY_HINT_RESOURCE_TYPE, "CurveTexture"), "set_param_texture", "get_param_texture", PARAM_SCALE); + ADD_GROUP("Color", ""); + ADD_PROPERTY(PropertyInfo(Variant::COLOR, "color"), "set_color", "get_color"); + ADD_PROPERTY(PropertyInfo(Variant::OBJECT, "color_ramp", PROPERTY_HINT_RESOURCE_TYPE, "GradientTexture"), "set_color_ramp", "get_color_ramp"); + + ADD_GROUP("Hue Variation", "hue_"); + ADD_PROPERTYI(PropertyInfo(Variant::REAL, "hue_variation", PROPERTY_HINT_RANGE, "-1,1,0.1"), "set_param", "get_param", PARAM_HUE_VARIATION); + ADD_PROPERTYI(PropertyInfo(Variant::REAL, "hue_variation_random", PROPERTY_HINT_RANGE, "0,1,0.01"), "set_param_randomness", "get_param_randomness", PARAM_HUE_VARIATION); + ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "hue_variation_curve", PROPERTY_HINT_RESOURCE_TYPE, "CurveTexture"), "set_param_texture", "get_param_texture", PARAM_HUE_VARIATION); + ADD_GROUP("Animation", "anim_"); + ADD_PROPERTYI(PropertyInfo(Variant::REAL, "anim_speed", PROPERTY_HINT_RANGE, "0,1,0.01"), "set_param", "get_param", PARAM_ANIM_SPEED); + ADD_PROPERTYI(PropertyInfo(Variant::REAL, "anim_speed_random", PROPERTY_HINT_RANGE, "0,1,0.01"), "set_param_randomness", "get_param_randomness", PARAM_ANIM_SPEED); + ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "anim_speed_curve", PROPERTY_HINT_RESOURCE_TYPE, "CurveTexture"), "set_param_texture", "get_param_texture", PARAM_ANIM_SPEED); + ADD_PROPERTYI(PropertyInfo(Variant::REAL, "anim_offset", PROPERTY_HINT_RANGE, "0,1,0.01"), "set_param", "get_param", PARAM_ANIM_OFFSET); + ADD_PROPERTYI(PropertyInfo(Variant::REAL, "anim_offset_random", PROPERTY_HINT_RANGE, "0,1,0.01"), "set_param_randomness", "get_param_randomness", PARAM_ANIM_OFFSET); + ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "anim_offset_curve", PROPERTY_HINT_RESOURCE_TYPE, "CurveTexture"), "set_param_texture", "get_param_texture", PARAM_ANIM_OFFSET); + + BIND_CONSTANT(PARAM_INITIAL_LINEAR_VELOCITY); + BIND_CONSTANT(PARAM_ANGULAR_VELOCITY); + BIND_CONSTANT(PARAM_ORBIT_VELOCITY); + BIND_CONSTANT(PARAM_LINEAR_ACCEL); + BIND_CONSTANT(PARAM_RADIAL_ACCEL); + BIND_CONSTANT(PARAM_TANGENTIAL_ACCEL); + BIND_CONSTANT(PARAM_DAMPING); + BIND_CONSTANT(PARAM_ANGLE); + BIND_CONSTANT(PARAM_SCALE); + BIND_CONSTANT(PARAM_HUE_VARIATION); + BIND_CONSTANT(PARAM_ANIM_SPEED); + BIND_CONSTANT(PARAM_ANIM_OFFSET); + BIND_CONSTANT(PARAM_MAX); + + BIND_CONSTANT(FLAG_ALIGN_Y_TO_VELOCITY); + BIND_CONSTANT(FLAG_ROTATE_Y); + BIND_CONSTANT(FLAG_MAX); + + BIND_CONSTANT(EMISSION_SHAPE_POINT); + BIND_CONSTANT(EMISSION_SHAPE_SPHERE); + BIND_CONSTANT(EMISSION_SHAPE_BOX); + BIND_CONSTANT(EMISSION_SHAPE_POINTS); + BIND_CONSTANT(EMISSION_SHAPE_DIRECTED_POINTS); +} -Particles::~Particles() { +ParticlesMaterial::ParticlesMaterial() + : element(this) { + + set_spread(45); + set_flatness(0); + set_param(PARAM_INITIAL_LINEAR_VELOCITY, 1); + set_param(PARAM_ORBIT_VELOCITY, 0); + set_param(PARAM_LINEAR_ACCEL, 0); + set_param(PARAM_RADIAL_ACCEL, 0); + set_param(PARAM_TANGENTIAL_ACCEL, 0); + set_param(PARAM_DAMPING, 0); + set_param(PARAM_ANGLE, 0); + set_param(PARAM_SCALE, 1); + set_param(PARAM_HUE_VARIATION, 0); + set_param(PARAM_ANIM_SPEED, 0); + set_param(PARAM_ANIM_OFFSET, 0); + set_emission_shape(EMISSION_SHAPE_POINT); + set_emission_sphere_radius(1); + set_emission_box_extents(Vector3(1, 1, 1)); + set_trail_divisor(1); + emission_point_count = 1; + + for (int i = 0; i < PARAM_MAX; i++) { + set_param_randomness(Parameter(i), 0); + } + + for (int i = 0; i < FLAG_MAX; i++) { + flags[i] = false; + } - VisualServer::get_singleton()->free(particles); + set_color(Color(1, 1, 1, 1)); + + current_key.key = 0; + current_key.invalid_key = 1; + + _queue_shader_change(); } -#endif +ParticlesMaterial::~ParticlesMaterial() { +} diff --git a/scene/3d/particles.h b/scene/3d/particles.h index 6cb1caad3a..3a46269396 100644 --- a/scene/3d/particles.h +++ b/scene/3d/particles.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -37,130 +38,336 @@ /** @author Juan Linietsky <reduzio@gmail.com> */ -#if 0 + class Particles : public GeometryInstance { +private: + GDCLASS(Particles, GeometryInstance); + public: + enum DrawOrder { + DRAW_ORDER_INDEX, + DRAW_ORDER_LIFETIME, + DRAW_ORDER_VIEW_DEPTH, + }; - enum Variable { - VAR_LIFETIME=VS::PARTICLE_LIFETIME, - VAR_SPREAD=VS::PARTICLE_SPREAD, - VAR_GRAVITY=VS::PARTICLE_GRAVITY, - VAR_LINEAR_VELOCITY=VS::PARTICLE_LINEAR_VELOCITY, - VAR_ANGULAR_VELOCITY=VS::PARTICLE_ANGULAR_VELOCITY, - VAR_LINEAR_ACCELERATION=VS::PARTICLE_LINEAR_ACCELERATION, - VAR_DRAG=VS::PARTICLE_RADIAL_ACCELERATION, - VAR_TANGENTIAL_ACCELERATION=VS::PARTICLE_TANGENTIAL_ACCELERATION, - VAR_DAMPING=VS::PARTICLE_DAMPING, - VAR_INITIAL_SIZE=VS::PARTICLE_INITIAL_SIZE, - VAR_FINAL_SIZE=VS::PARTICLE_FINAL_SIZE, - VAR_INITIAL_ANGLE=VS::PARTICLE_INITIAL_ANGLE, - VAR_HEIGHT=VS::PARTICLE_HEIGHT, - VAR_HEIGHT_SPEED_SCALE=VS::PARTICLE_HEIGHT_SPEED_SCALE, - VAR_MAX=VS::PARTICLE_VAR_MAX + enum { + MAX_DRAW_PASSES = 4 }; private: - GDCLASS( Particles, GeometryInstance ); - RID particles; - int amount; bool emitting; - float emit_timeout; - AABB visibility_aabb; - Vector3 gravity_normal; - Vector3 emission_half_extents; - bool using_points; - float var[VAR_MAX]; - float var_random[VAR_MAX]; - bool height_from_velocity; - Vector3 emission_base_velocity; - bool local_coordinates; - - struct ColorPhase { - - Color color; - float pos; - }; - - virtual bool _can_gizmo_scale() const; - virtual RES _get_gizmo_geometry() const; - - int color_phase_count; + int amount; + float lifetime; + float pre_process_time; + float explosiveness_ratio; + float randomness_ratio; + Rect3 custom_aabb; + Vector3 gravity; + bool local_coords; + int fixed_fps; + bool fractional_delta; - ColorPhase color_phase[4]; + Ref<Material> process_material; - Ref<Material> material; + DrawOrder draw_order; - Timer* timer; - void setup_timer(); + Vector<Ref<Mesh> > draw_passes; protected: - static void _bind_methods(); + virtual void _validate_property(PropertyInfo &property) const; public: - - - AABB get_aabb() const; + Rect3 get_aabb() const; PoolVector<Face3> get_faces(uint32_t p_usage_flags) const; + void set_emitting(bool p_emitting); void set_amount(int p_amount); - int get_amount() const; + void set_lifetime(float p_lifetime); + void set_pre_process_time(float p_time); + void set_explosiveness_ratio(float p_ratio); + void set_randomness_ratio(float p_ratio); + void set_custom_aabb(const Rect3 &p_aabb); + void set_gravity(const Vector3 &p_gravity); + void set_use_local_coordinates(bool p_enable); + void set_process_material(const Ref<Material> &p_material); - void set_emitting(bool p_emitting); bool is_emitting() const; + int get_amount() const; + float get_lifetime() const; + float get_pre_process_time() const; + float get_explosiveness_ratio() const; + float get_randomness_ratio() const; + Rect3 get_custom_aabb() const; + Vector3 get_gravity() const; + bool get_use_local_coordinates() const; + Ref<Material> get_process_material() const; - void set_visibility_aabb(const AABB& p_aabb); - AABB get_visibility_aabb() const; + void set_fixed_fps(int p_count); + int get_fixed_fps() const; - void set_emission_half_extents(const Vector3& p_half_extents); - Vector3 get_emission_half_extents() const; + void set_fractional_delta(bool p_enable); + bool get_fractional_delta() const; - void set_emission_base_velocity(const Vector3& p_base_velocity); - Vector3 get_emission_base_velocity() const; + void set_draw_order(DrawOrder p_order); + DrawOrder get_draw_order() const; - void set_emission_points(const PoolVector<Vector3>& p_points); - PoolVector<Vector3> get_emission_points() const; + void set_draw_passes(int p_count); + int get_draw_passes() const; - void set_gravity_normal(const Vector3& p_normal); - Vector3 get_gravity_normal() const; + void set_draw_pass_mesh(int p_pass, const Ref<Mesh> &p_mesh); + Ref<Mesh> get_draw_pass_mesh(int p_pass) const; - void set_variable(Variable p_variable,float p_value); - float get_variable(Variable p_variable) const; + Particles(); + ~Particles(); +}; - void set_randomness(Variable p_variable,float p_randomness); - float get_randomness(Variable p_variable) const; +VARIANT_ENUM_CAST(Particles::DrawOrder) - void set_color_phases(int p_phases); - int get_color_phases() const; +class ParticlesMaterial : public Material { - void set_color_phase_pos(int p_phase, float p_pos); - float get_color_phase_pos(int p_phase) const; + GDCLASS(ParticlesMaterial, Material) - void set_color_phase_color(int p_phase, const Color& p_color); - Color get_color_phase_color(int p_phase) const; +public: + enum Parameter { + + PARAM_INITIAL_LINEAR_VELOCITY, + PARAM_ANGULAR_VELOCITY, + PARAM_ORBIT_VELOCITY, + PARAM_LINEAR_ACCEL, + PARAM_RADIAL_ACCEL, + PARAM_TANGENTIAL_ACCEL, + PARAM_DAMPING, + PARAM_ANGLE, + PARAM_SCALE, + PARAM_HUE_VARIATION, + PARAM_ANIM_SPEED, + PARAM_ANIM_OFFSET, + PARAM_MAX + }; - void set_height_from_velocity(bool p_enable); - bool has_height_from_velocity() const; + enum Flags { + FLAG_ALIGN_Y_TO_VELOCITY, + FLAG_ROTATE_Y, + FLAG_MAX + }; - void set_material(const Ref<Material>& p_material); - Ref<Material> get_material() const; + enum EmissionShape { + EMISSION_SHAPE_POINT, + EMISSION_SHAPE_SPHERE, + EMISSION_SHAPE_BOX, + EMISSION_SHAPE_POINTS, + EMISSION_SHAPE_DIRECTED_POINTS, + }; - void set_emit_timeout(float p_timeout); - float get_emit_timeout() const; +private: + union MaterialKey { + + struct { + uint32_t texture_mask : 16; + uint32_t texture_color : 1; + uint32_t flags : 2; + uint32_t emission_shape : 2; + uint32_t trail_size_texture : 1; + uint32_t trail_color_texture : 1; + uint32_t invalid_key : 1; + }; + + uint32_t key; + + bool operator<(const MaterialKey &p_key) const { + return key < p_key.key; + } + }; - void set_use_local_coordinates(bool p_use); - bool is_using_local_coordinates() const; + struct ShaderData { + RID shader; + int users; + }; - void start_emitting(float p_time); + static Map<MaterialKey, ShaderData> shader_map; + + MaterialKey current_key; + + _FORCE_INLINE_ MaterialKey _compute_key() const { + + MaterialKey mk; + mk.key = 0; + for (int i = 0; i < PARAM_MAX; i++) { + if (tex_parameters[i].is_valid()) { + mk.texture_mask |= (1 << i); + } + } + for (int i = 0; i < FLAG_MAX; i++) { + if (flags[i]) { + mk.flags |= (1 << i); + } + } + + mk.texture_color = color_ramp.is_valid() ? 1 : 0; + mk.emission_shape = emission_shape; + mk.trail_color_texture = trail_color_modifier.is_valid() ? 1 : 0; + mk.trail_size_texture = trail_size_modifier.is_valid() ? 1 : 0; + + return mk; + } + + static Mutex *material_mutex; + static SelfList<ParticlesMaterial>::List dirty_materials; + + struct ShaderNames { + StringName spread; + StringName flatness; + StringName initial_linear_velocity; + StringName initial_angle; + StringName angular_velocity; + StringName orbit_velocity; + StringName linear_accel; + StringName radial_accel; + StringName tangent_accel; + StringName damping; + StringName scale; + StringName hue_variation; + StringName anim_speed; + StringName anim_offset; + + StringName initial_linear_velocity_random; + StringName initial_angle_random; + StringName angular_velocity_random; + StringName orbit_velocity_random; + StringName linear_accel_random; + StringName radial_accel_random; + StringName tangent_accel_random; + StringName damping_random; + StringName scale_random; + StringName hue_variation_random; + StringName anim_speed_random; + StringName anim_offset_random; + + StringName angle_texture; + StringName angular_velocity_texture; + StringName orbit_velocity_texture; + StringName linear_accel_texture; + StringName radial_accel_texture; + StringName tangent_accel_texture; + StringName damping_texture; + StringName scale_texture; + StringName hue_variation_texture; + StringName anim_speed_texture; + StringName anim_offset_texture; + + StringName color; + StringName color_ramp; + + StringName emission_sphere_radius; + StringName emission_box_extents; + StringName emission_texture_point_count; + StringName emission_texture_points; + StringName emission_texture_normal; + + StringName trail_divisor; + StringName trail_size_modifier; + StringName trail_color_modifier; + }; + static ShaderNames *shader_names; - Particles(); - ~Particles(); + SelfList<ParticlesMaterial> element; + void _update_shader(); + _FORCE_INLINE_ void _queue_shader_change(); + _FORCE_INLINE_ bool _is_shader_dirty() const; + + float spread; + float flatness; + + float parameters[PARAM_MAX]; + float randomness[PARAM_MAX]; + + Ref<Texture> tex_parameters[PARAM_MAX]; + Color color; + Ref<Texture> color_ramp; + + bool flags[FLAG_MAX]; + + EmissionShape emission_shape; + float emission_sphere_radius; + Vector3 emission_box_extents; + Ref<Texture> emission_point_texture; + Ref<Texture> emission_normal_texture; + int emission_point_count; + + int trail_divisor; + + Ref<CurveTexture> trail_size_modifier; + Ref<GradientTexture> trail_color_modifier; + + //do not save emission points here + +protected: + static void _bind_methods(); + virtual void _validate_property(PropertyInfo &property) const; + +public: + void set_spread(float p_spread); + float get_spread() const; + + void set_flatness(float p_flatness); + float get_flatness() const; + + void set_param(Parameter p_param, float p_value); + float get_param(Parameter p_param) const; + + void set_param_randomness(Parameter p_param, float p_value); + float get_param_randomness(Parameter p_param) const; + + void set_param_texture(Parameter p_param, const Ref<Texture> &p_texture); + Ref<Texture> get_param_texture(Parameter p_param) const; + + void set_color(const Color &p_color); + Color get_color() const; + + void set_color_ramp(const Ref<Texture> &p_texture); + Ref<Texture> get_color_ramp() const; + + void set_flag(Flags p_flag, bool p_enable); + bool get_flag(Flags p_flag) const; + + void set_emission_shape(EmissionShape p_shape); + void set_emission_sphere_radius(float p_radius); + void set_emission_box_extents(Vector3 p_extents); + void set_emission_point_texture(const Ref<Texture> &p_points); + void set_emission_normal_texture(const Ref<Texture> &p_normals); + void set_emission_point_count(int p_count); + + EmissionShape get_emission_shape() const; + float get_emission_sphere_radius() const; + Vector3 get_emission_box_extents() const; + Ref<Texture> get_emission_point_texture() const; + Ref<Texture> get_emission_normal_texture() const; + int get_emission_point_count() const; + + void set_trail_divisor(int p_divisor); + int get_trail_divisor() const; + + void set_trail_size_modifier(const Ref<CurveTexture> &p_trail_size_modifier); + Ref<CurveTexture> get_trail_size_modifier() const; + + void set_trail_color_modifier(const Ref<GradientTexture> &p_trail_color_modifier); + Ref<GradientTexture> get_trail_color_modifier() const; + + static void init_shaders(); + static void finish_shaders(); + static void flush_changes(); + + ParticlesMaterial(); + ~ParticlesMaterial(); }; -VARIANT_ENUM_CAST( Particles::Variable ); -#endif +VARIANT_ENUM_CAST(ParticlesMaterial::Parameter) +VARIANT_ENUM_CAST(ParticlesMaterial::Flags) +VARIANT_ENUM_CAST(ParticlesMaterial::EmissionShape) + #endif diff --git a/scene/3d/path.cpp b/scene/3d/path.cpp index 457e9e5552..d535c545a8 100644 --- a/scene/3d/path.cpp +++ b/scene/3d/path.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/path.h b/scene/3d/path.h index 94227799ed..eeae0668a7 100644 --- a/scene/3d/path.h +++ b/scene/3d/path.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/physics_body.cpp b/scene/3d/physics_body.cpp index 78a00e4a7f..94f34d6fb3 100644 --- a/scene/3d/physics_body.cpp +++ b/scene/3d/physics_body.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/physics_body.h b/scene/3d/physics_body.h index 1cef946836..c62f6be13f 100644 --- a/scene/3d/physics_body.h +++ b/scene/3d/physics_body.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/physics_joint.cpp b/scene/3d/physics_joint.cpp index 8c20b003f8..3fb5c828c2 100644 --- a/scene/3d/physics_joint.cpp +++ b/scene/3d/physics_joint.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/physics_joint.h b/scene/3d/physics_joint.h index 90d86d652d..2b221e25f2 100644 --- a/scene/3d/physics_joint.h +++ b/scene/3d/physics_joint.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/portal.cpp b/scene/3d/portal.cpp index 391a74ec45..64a9dc14ab 100644 --- a/scene/3d/portal.cpp +++ b/scene/3d/portal.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/portal.h b/scene/3d/portal.h index 018708308f..7c25e4904b 100644 --- a/scene/3d/portal.h +++ b/scene/3d/portal.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/position_3d.cpp b/scene/3d/position_3d.cpp index ee09ed93a7..4e66ef13c0 100644 --- a/scene/3d/position_3d.cpp +++ b/scene/3d/position_3d.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/position_3d.h b/scene/3d/position_3d.h index dae94dfbaf..0adde19342 100644 --- a/scene/3d/position_3d.h +++ b/scene/3d/position_3d.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/proximity_group.cpp b/scene/3d/proximity_group.cpp index f1225b6901..5441904d81 100644 --- a/scene/3d/proximity_group.cpp +++ b/scene/3d/proximity_group.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/proximity_group.h b/scene/3d/proximity_group.h index f40ffe2ffe..fec3add41f 100644 --- a/scene/3d/proximity_group.h +++ b/scene/3d/proximity_group.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/quad.cpp b/scene/3d/quad.cpp index e32320681c..c3d83ad50d 100644 --- a/scene/3d/quad.cpp +++ b/scene/3d/quad.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/quad.h b/scene/3d/quad.h index 607d7238ed..bb6c1219ad 100644 --- a/scene/3d/quad.h +++ b/scene/3d/quad.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/ray_cast.cpp b/scene/3d/ray_cast.cpp index a73114a7c7..f984d8f06d 100644 --- a/scene/3d/ray_cast.cpp +++ b/scene/3d/ray_cast.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/ray_cast.h b/scene/3d/ray_cast.h index 00a10446a5..7ab7b57db3 100644 --- a/scene/3d/ray_cast.h +++ b/scene/3d/ray_cast.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/reflection_probe.cpp b/scene/3d/reflection_probe.cpp index 90dbd51272..845245b090 100644 --- a/scene/3d/reflection_probe.cpp +++ b/scene/3d/reflection_probe.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/reflection_probe.h b/scene/3d/reflection_probe.h index a2e4a18d68..d2a5facb5f 100644 --- a/scene/3d/reflection_probe.h +++ b/scene/3d/reflection_probe.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/remote_transform.cpp b/scene/3d/remote_transform.cpp index 202206dd02..b36f444bea 100644 --- a/scene/3d/remote_transform.cpp +++ b/scene/3d/remote_transform.cpp @@ -7,6 +7,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/remote_transform.h b/scene/3d/remote_transform.h index fdfd959a96..9fa3011185 100644 --- a/scene/3d/remote_transform.h +++ b/scene/3d/remote_transform.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/room_instance.cpp b/scene/3d/room_instance.cpp index 3b6ae32d16..85713cf43a 100644 --- a/scene/3d/room_instance.cpp +++ b/scene/3d/room_instance.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/room_instance.h b/scene/3d/room_instance.h index 68be5eecf2..4176da92e8 100644 --- a/scene/3d/room_instance.h +++ b/scene/3d/room_instance.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/scenario_fx.cpp b/scene/3d/scenario_fx.cpp index 92ee608f73..874c21546d 100644 --- a/scene/3d/scenario_fx.cpp +++ b/scene/3d/scenario_fx.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/scenario_fx.h b/scene/3d/scenario_fx.h index bbdffdc131..b2a4bc5472 100644 --- a/scene/3d/scenario_fx.h +++ b/scene/3d/scenario_fx.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/skeleton.cpp b/scene/3d/skeleton.cpp index 3a5453c8ef..d498947a41 100644 --- a/scene/3d/skeleton.cpp +++ b/scene/3d/skeleton.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/skeleton.h b/scene/3d/skeleton.h index 7074289724..dc0adbb337 100644 --- a/scene/3d/skeleton.h +++ b/scene/3d/skeleton.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/spatial.cpp b/scene/3d/spatial.cpp index 1698c0ffd0..3debbf02c3 100644 --- a/scene/3d/spatial.cpp +++ b/scene/3d/spatial.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -511,17 +512,6 @@ Ref<World> Spatial::get_world() const { return data.viewport->find_world(); } -#ifdef TOOLS_ENABLED -void Spatial::set_import_transform(const Transform &p_transform) { - data.import_transform = p_transform; -} - -Transform Spatial::get_import_transform() const { - - return data.import_transform; -} -#endif - void Spatial::_propagate_visibility_changed() { notification(NOTIFICATION_VISIBILITY_CHANGED); @@ -729,9 +719,6 @@ void Spatial::_bind_methods() { #ifdef TOOLS_ENABLED ClassDB::bind_method(D_METHOD("_update_gizmo"), &Spatial::_update_gizmo); - ClassDB::bind_method(D_METHOD("_set_import_transform"), &Spatial::set_import_transform); - ClassDB::bind_method(D_METHOD("_get_import_transform"), &Spatial::get_import_transform); - ADD_PROPERTY(PropertyInfo(Variant::TRANSFORM, "_import_transform", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR), "_set_import_transform", "_get_import_transform"); #endif ClassDB::bind_method(D_METHOD("update_gizmo"), &Spatial::update_gizmo); diff --git a/scene/3d/spatial.h b/scene/3d/spatial.h index e5817883dd..764950aa8e 100644 --- a/scene/3d/spatial.h +++ b/scene/3d/spatial.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -94,7 +95,6 @@ class Spatial : public Node { Ref<SpatialGizmo> gizmo; bool gizmo_disabled; bool gizmo_dirty; - Transform import_transform; #endif } data; @@ -188,11 +188,6 @@ public: void hide(); bool is_visible_in_tree() const; -#ifdef TOOLS_ENABLED - void set_import_transform(const Transform &p_transform); - Transform get_import_transform() const; -#endif - Spatial(); ~Spatial(); }; diff --git a/scene/3d/spatial_indexer.cpp b/scene/3d/spatial_indexer.cpp index cddbf9a4e8..7090c974a3 100644 --- a/scene/3d/spatial_indexer.cpp +++ b/scene/3d/spatial_indexer.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/spatial_indexer.h b/scene/3d/spatial_indexer.h index 94c579ba23..c8bdf8950d 100644 --- a/scene/3d/spatial_indexer.h +++ b/scene/3d/spatial_indexer.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/sprite_3d.cpp b/scene/3d/sprite_3d.cpp index 062e3943b9..e97b22f9e0 100644 --- a/scene/3d/sprite_3d.cpp +++ b/scene/3d/sprite_3d.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/sprite_3d.h b/scene/3d/sprite_3d.h index d1de4e1b88..625b37c32e 100644 --- a/scene/3d/sprite_3d.h +++ b/scene/3d/sprite_3d.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/test_cube.cpp b/scene/3d/test_cube.cpp index bab1d1e1c8..af09bef7a7 100644 --- a/scene/3d/test_cube.cpp +++ b/scene/3d/test_cube.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/test_cube.h b/scene/3d/test_cube.h index d03bea7b68..db2bef67fe 100644 --- a/scene/3d/test_cube.h +++ b/scene/3d/test_cube.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/vehicle_body.cpp b/scene/3d/vehicle_body.cpp index 4a647fe682..38e1ba1cd5 100644 --- a/scene/3d/vehicle_body.cpp +++ b/scene/3d/vehicle_body.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/vehicle_body.h b/scene/3d/vehicle_body.h index 55b521cfa6..cdb2ebc0be 100644 --- a/scene/3d/vehicle_body.h +++ b/scene/3d/vehicle_body.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/visibility_notifier.cpp b/scene/3d/visibility_notifier.cpp index 909ac002b0..5e6561adb7 100644 --- a/scene/3d/visibility_notifier.cpp +++ b/scene/3d/visibility_notifier.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/visibility_notifier.h b/scene/3d/visibility_notifier.h index 09c1175bf1..316b2c3575 100644 --- a/scene/3d/visibility_notifier.h +++ b/scene/3d/visibility_notifier.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/3d/visual_instance.cpp b/scene/3d/visual_instance.cpp index 852881abd4..104fa0f70f 100644 --- a/scene/3d/visual_instance.cpp +++ b/scene/3d/visual_instance.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -318,9 +319,6 @@ void GeometryInstance::_bind_methods() { ADD_PROPERTY(PropertyInfo(Variant::OBJECT, "material_override", PROPERTY_HINT_RESOURCE_TYPE, "Material"), "set_material_override", "get_material_override"); ADD_PROPERTY(PropertyInfo(Variant::INT, "cast_shadow", PROPERTY_HINT_ENUM, "Off,On,Double-Sided,Shadows Only"), "set_cast_shadows_setting", "get_cast_shadows_setting"); ADD_PROPERTY(PropertyInfo(Variant::REAL, "extra_cull_margin", PROPERTY_HINT_RANGE, "0,16384,0"), "set_extra_cull_margin", "get_extra_cull_margin"); - ADD_PROPERTYI(PropertyInfo(Variant::BOOL, "use_as_billboard"), "set_flag", "get_flag", FLAG_BILLBOARD); - ADD_PROPERTYI(PropertyInfo(Variant::BOOL, "use_as_y_billboard"), "set_flag", "get_flag", FLAG_BILLBOARD_FIX_Y); - ADD_PROPERTYI(PropertyInfo(Variant::BOOL, "use_depth_scale"), "set_flag", "get_flag", FLAG_DEPH_SCALE); ADD_PROPERTYI(PropertyInfo(Variant::BOOL, "visible_in_all_rooms"), "set_flag", "get_flag", FLAG_VISIBLE_IN_ALL_ROOMS); ADD_PROPERTYI(PropertyInfo(Variant::BOOL, "use_in_baked_light"), "set_flag", "get_flag", FLAG_USE_BAKED_LIGHT); @@ -333,9 +331,6 @@ void GeometryInstance::_bind_methods() { //ADD_SIGNAL( MethodInfo("visibility_changed")); BIND_CONSTANT(FLAG_CAST_SHADOW); - BIND_CONSTANT(FLAG_BILLBOARD); - BIND_CONSTANT(FLAG_BILLBOARD_FIX_Y); - BIND_CONSTANT(FLAG_DEPH_SCALE); BIND_CONSTANT(FLAG_VISIBLE_IN_ALL_ROOMS); BIND_CONSTANT(FLAG_MAX); diff --git a/scene/3d/visual_instance.h b/scene/3d/visual_instance.h index 9f1cba923f..9318198e54 100644 --- a/scene/3d/visual_instance.h +++ b/scene/3d/visual_instance.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -84,9 +85,6 @@ class GeometryInstance : public VisualInstance { public: enum Flags { FLAG_CAST_SHADOW = VS::INSTANCE_FLAG_CAST_SHADOW, - FLAG_BILLBOARD = VS::INSTANCE_FLAG_BILLBOARD, - FLAG_BILLBOARD_FIX_Y = VS::INSTANCE_FLAG_BILLBOARD_FIX_Y, - FLAG_DEPH_SCALE = VS::INSTANCE_FLAG_DEPH_SCALE, FLAG_VISIBLE_IN_ALL_ROOMS = VS::INSTANCE_FLAG_VISIBLE_IN_ALL_ROOMS, FLAG_USE_BAKED_LIGHT = VS::INSTANCE_FLAG_USE_BAKED_LIGHT, FLAG_MAX = VS::INSTANCE_FLAG_MAX, diff --git a/scene/animation/animation_cache.cpp b/scene/animation/animation_cache.cpp index 93fbde519e..31fee0e347 100644 --- a/scene/animation/animation_cache.cpp +++ b/scene/animation/animation_cache.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/animation/animation_cache.h b/scene/animation/animation_cache.h index 1668c62519..6687098d00 100644 --- a/scene/animation/animation_cache.h +++ b/scene/animation/animation_cache.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/animation/animation_player.cpp b/scene/animation/animation_player.cpp index dc9aa1758a..d6c68a1d82 100644 --- a/scene/animation/animation_player.cpp +++ b/scene/animation/animation_player.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/animation/animation_player.h b/scene/animation/animation_player.h index b5679d62f1..96fc70a3ad 100644 --- a/scene/animation/animation_player.h +++ b/scene/animation/animation_player.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/animation/animation_tree_player.cpp b/scene/animation/animation_tree_player.cpp index 6f4279526a..7c2684ba47 100644 --- a/scene/animation/animation_tree_player.cpp +++ b/scene/animation/animation_tree_player.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/animation/animation_tree_player.h b/scene/animation/animation_tree_player.h index 35fce9b15d..062b4e1eeb 100644 --- a/scene/animation/animation_tree_player.h +++ b/scene/animation/animation_tree_player.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/animation/tween.cpp b/scene/animation/tween.cpp index bb7ea47178..2a6ffb5628 100644 --- a/scene/animation/tween.cpp +++ b/scene/animation/tween.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/animation/tween.h b/scene/animation/tween.h index 84f866f43e..f89f3bdc44 100644 --- a/scene/animation/tween.h +++ b/scene/animation/tween.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/animation/tween_interpolaters.cpp b/scene/animation/tween_interpolaters.cpp index ef55b63edd..434f4df3e1 100644 --- a/scene/animation/tween_interpolaters.cpp +++ b/scene/animation/tween_interpolaters.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/audio/audio_player.cpp b/scene/audio/audio_player.cpp index 1ee31a94d8..a320a30e8a 100644 --- a/scene/audio/audio_player.cpp +++ b/scene/audio/audio_player.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/audio/audio_player.h b/scene/audio/audio_player.h index 0d78626189..5a8a8494e1 100644 --- a/scene/audio/audio_player.h +++ b/scene/audio/audio_player.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/base_button.cpp b/scene/gui/base_button.cpp index eceee8e317..ee4f8736d7 100644 --- a/scene/gui/base_button.cpp +++ b/scene/gui/base_button.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/base_button.h b/scene/gui/base_button.h index e382df61c9..62b6633bfc 100644 --- a/scene/gui/base_button.h +++ b/scene/gui/base_button.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/box_container.cpp b/scene/gui/box_container.cpp index 1096c43c10..e7f4a274d5 100644 --- a/scene/gui/box_container.cpp +++ b/scene/gui/box_container.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/box_container.h b/scene/gui/box_container.h index 04b074896b..d544ff79d1 100644 --- a/scene/gui/box_container.h +++ b/scene/gui/box_container.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/button.cpp b/scene/gui/button.cpp index 23915c51a8..6fcc878e11 100644 --- a/scene/gui/button.cpp +++ b/scene/gui/button.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/button.h b/scene/gui/button.h index 38605bd3ef..499e44c0e1 100644 --- a/scene/gui/button.h +++ b/scene/gui/button.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/button_array.cpp b/scene/gui/button_array.cpp index c1cb9ad855..eccf3ea64a 100644 --- a/scene/gui/button_array.cpp +++ b/scene/gui/button_array.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/button_array.h b/scene/gui/button_array.h index dac130e79a..f2f7bea9c6 100644 --- a/scene/gui/button_array.h +++ b/scene/gui/button_array.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/button_group.cpp b/scene/gui/button_group.cpp index 21c1559b8f..75fe438448 100644 --- a/scene/gui/button_group.cpp +++ b/scene/gui/button_group.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/button_group.h b/scene/gui/button_group.h index 38acd06984..93c3aaaeb3 100644 --- a/scene/gui/button_group.h +++ b/scene/gui/button_group.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/center_container.cpp b/scene/gui/center_container.cpp index 9cee8c0cc1..bdc811870d 100644 --- a/scene/gui/center_container.cpp +++ b/scene/gui/center_container.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/center_container.h b/scene/gui/center_container.h index c2deb823f1..30b526e893 100644 --- a/scene/gui/center_container.h +++ b/scene/gui/center_container.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/check_box.cpp b/scene/gui/check_box.cpp index c7e2f4e7f9..b61d516599 100644 --- a/scene/gui/check_box.cpp +++ b/scene/gui/check_box.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/check_box.h b/scene/gui/check_box.h index 9b682de177..ec8e097bae 100644 --- a/scene/gui/check_box.h +++ b/scene/gui/check_box.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/check_button.cpp b/scene/gui/check_button.cpp index 6b24e0889a..1c3d4df308 100644 --- a/scene/gui/check_button.cpp +++ b/scene/gui/check_button.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/check_button.h b/scene/gui/check_button.h index adf210a1e1..8634858cfe 100644 --- a/scene/gui/check_button.h +++ b/scene/gui/check_button.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/color_picker.cpp b/scene/gui/color_picker.cpp index 0f982167bf..8a94d4918f 100644 --- a/scene/gui/color_picker.cpp +++ b/scene/gui/color_picker.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/color_picker.h b/scene/gui/color_picker.h index bd1abeecbe..bce1ae07f7 100644 --- a/scene/gui/color_picker.h +++ b/scene/gui/color_picker.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/color_ramp_edit.cpp b/scene/gui/color_ramp_edit.cpp index 131638bb70..0bc9205175 100644 --- a/scene/gui/color_ramp_edit.cpp +++ b/scene/gui/color_ramp_edit.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/color_ramp_edit.h b/scene/gui/color_ramp_edit.h index bb12064ddf..38176d2e77 100644 --- a/scene/gui/color_ramp_edit.h +++ b/scene/gui/color_ramp_edit.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/color_rect.cpp b/scene/gui/color_rect.cpp index 7febecc0b9..0641302b1c 100644 --- a/scene/gui/color_rect.cpp +++ b/scene/gui/color_rect.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/color_rect.h b/scene/gui/color_rect.h index c6d0164ac9..65da3d9a7c 100644 --- a/scene/gui/color_rect.h +++ b/scene/gui/color_rect.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/container.cpp b/scene/gui/container.cpp index 811b41863c..d3096d7806 100644 --- a/scene/gui/container.cpp +++ b/scene/gui/container.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/container.h b/scene/gui/container.h index 78f647f59d..bff24c6d55 100644 --- a/scene/gui/container.h +++ b/scene/gui/container.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/control.cpp b/scene/gui/control.cpp index c249d3dd64..bda54181c7 100644 --- a/scene/gui/control.cpp +++ b/scene/gui/control.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/control.h b/scene/gui/control.h index a18567123b..9075c5a6ed 100644 --- a/scene/gui/control.h +++ b/scene/gui/control.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/dialogs.cpp b/scene/gui/dialogs.cpp index df8bfcf691..c53b2bdb21 100644 --- a/scene/gui/dialogs.cpp +++ b/scene/gui/dialogs.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/dialogs.h b/scene/gui/dialogs.h index a729a8f907..2365df3d79 100644 --- a/scene/gui/dialogs.h +++ b/scene/gui/dialogs.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/file_dialog.cpp b/scene/gui/file_dialog.cpp index d4643b399d..2f1af318e9 100644 --- a/scene/gui/file_dialog.cpp +++ b/scene/gui/file_dialog.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/file_dialog.h b/scene/gui/file_dialog.h index 397b0feba2..2afd0227c6 100644 --- a/scene/gui/file_dialog.h +++ b/scene/gui/file_dialog.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/graph_edit.cpp b/scene/gui/graph_edit.cpp index 6a3b5e713c..76baf20526 100644 --- a/scene/gui/graph_edit.cpp +++ b/scene/gui/graph_edit.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/graph_edit.h b/scene/gui/graph_edit.h index 5166f82310..ff3867a059 100644 --- a/scene/gui/graph_edit.h +++ b/scene/gui/graph_edit.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/graph_node.cpp b/scene/gui/graph_node.cpp index afbb0bbad7..f7bb866f6f 100644 --- a/scene/gui/graph_node.cpp +++ b/scene/gui/graph_node.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/graph_node.h b/scene/gui/graph_node.h index bab78dedb9..e98d0b3d07 100644 --- a/scene/gui/graph_node.h +++ b/scene/gui/graph_node.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/grid_container.cpp b/scene/gui/grid_container.cpp index aae11255ed..06a58d69b2 100644 --- a/scene/gui/grid_container.cpp +++ b/scene/gui/grid_container.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/grid_container.h b/scene/gui/grid_container.h index 61dda4e223..aaa6a295ff 100644 --- a/scene/gui/grid_container.h +++ b/scene/gui/grid_container.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/input_action.cpp b/scene/gui/input_action.cpp index 9576bb07e4..5b03338286 100644 --- a/scene/gui/input_action.cpp +++ b/scene/gui/input_action.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/input_action.h b/scene/gui/input_action.h index a0f5cf2c11..c33490ae1d 100644 --- a/scene/gui/input_action.h +++ b/scene/gui/input_action.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/item_list.cpp b/scene/gui/item_list.cpp index 1db748a6b1..c2d5775b64 100644 --- a/scene/gui/item_list.cpp +++ b/scene/gui/item_list.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/item_list.h b/scene/gui/item_list.h index 5de58cfde8..4b896de77c 100644 --- a/scene/gui/item_list.h +++ b/scene/gui/item_list.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/label.cpp b/scene/gui/label.cpp index 0dec69d9b3..f3a279bada 100644 --- a/scene/gui/label.cpp +++ b/scene/gui/label.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/label.h b/scene/gui/label.h index 769e4b2256..dce68f4422 100644 --- a/scene/gui/label.h +++ b/scene/gui/label.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/line_edit.cpp b/scene/gui/line_edit.cpp index 20725194cf..30bc4d1663 100644 --- a/scene/gui/line_edit.cpp +++ b/scene/gui/line_edit.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/line_edit.h b/scene/gui/line_edit.h index 0746547115..a969095947 100644 --- a/scene/gui/line_edit.h +++ b/scene/gui/line_edit.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/link_button.cpp b/scene/gui/link_button.cpp index 17e549c902..9cb67b75e2 100644 --- a/scene/gui/link_button.cpp +++ b/scene/gui/link_button.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/link_button.h b/scene/gui/link_button.h index 97c2bfc3c8..98a3dc66f6 100644 --- a/scene/gui/link_button.h +++ b/scene/gui/link_button.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/margin_container.cpp b/scene/gui/margin_container.cpp index b7824e9037..2bc9db529b 100644 --- a/scene/gui/margin_container.cpp +++ b/scene/gui/margin_container.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/margin_container.h b/scene/gui/margin_container.h index 9f0829a34d..1cdb3a36cc 100644 --- a/scene/gui/margin_container.h +++ b/scene/gui/margin_container.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/menu_button.cpp b/scene/gui/menu_button.cpp index f2e2c9b255..16277ed0d0 100644 --- a/scene/gui/menu_button.cpp +++ b/scene/gui/menu_button.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/menu_button.h b/scene/gui/menu_button.h index 4acb62cf37..e07627c07c 100644 --- a/scene/gui/menu_button.h +++ b/scene/gui/menu_button.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/option_button.cpp b/scene/gui/option_button.cpp index 43f68d92ab..0bb68e7fa1 100644 --- a/scene/gui/option_button.cpp +++ b/scene/gui/option_button.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/option_button.h b/scene/gui/option_button.h index 55a98cb50c..887d199c90 100644 --- a/scene/gui/option_button.h +++ b/scene/gui/option_button.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/panel.cpp b/scene/gui/panel.cpp index 536f0baf73..f3c6142f9e 100644 --- a/scene/gui/panel.cpp +++ b/scene/gui/panel.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/panel.h b/scene/gui/panel.h index 3d2c0a3e98..eac8f2d4e8 100644 --- a/scene/gui/panel.h +++ b/scene/gui/panel.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/panel_container.cpp b/scene/gui/panel_container.cpp index 9dc7a6b32e..86874f7cfd 100644 --- a/scene/gui/panel_container.cpp +++ b/scene/gui/panel_container.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/panel_container.h b/scene/gui/panel_container.h index 13ed1c935c..f8f1fb6494 100644 --- a/scene/gui/panel_container.h +++ b/scene/gui/panel_container.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/patch_9_rect.cpp b/scene/gui/patch_9_rect.cpp index e1ac2be7e6..0c2b94d700 100644 --- a/scene/gui/patch_9_rect.cpp +++ b/scene/gui/patch_9_rect.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/patch_9_rect.h b/scene/gui/patch_9_rect.h index 09663e62f6..ba978f2f81 100644 --- a/scene/gui/patch_9_rect.h +++ b/scene/gui/patch_9_rect.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/popup.cpp b/scene/gui/popup.cpp index 52ad37e9ab..523633166c 100644 --- a/scene/gui/popup.cpp +++ b/scene/gui/popup.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/popup.h b/scene/gui/popup.h index d80daaad10..950aa65fa4 100644 --- a/scene/gui/popup.h +++ b/scene/gui/popup.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/popup_menu.cpp b/scene/gui/popup_menu.cpp index a2a670fa1f..de16f3c525 100644 --- a/scene/gui/popup_menu.cpp +++ b/scene/gui/popup_menu.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/popup_menu.h b/scene/gui/popup_menu.h index 186d40f6d3..de809f29d3 100644 --- a/scene/gui/popup_menu.h +++ b/scene/gui/popup_menu.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/progress_bar.cpp b/scene/gui/progress_bar.cpp index 86dea6cd96..13d368d253 100644 --- a/scene/gui/progress_bar.cpp +++ b/scene/gui/progress_bar.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/progress_bar.h b/scene/gui/progress_bar.h index b5820d1682..1121a78aab 100644 --- a/scene/gui/progress_bar.h +++ b/scene/gui/progress_bar.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/range.cpp b/scene/gui/range.cpp index 626d1d9663..7158592bb1 100644 --- a/scene/gui/range.cpp +++ b/scene/gui/range.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/range.h b/scene/gui/range.h index 105bd08a4f..fdcbbb09ee 100644 --- a/scene/gui/range.h +++ b/scene/gui/range.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/reference_rect.cpp b/scene/gui/reference_rect.cpp index cc38b896d9..400ff299a9 100644 --- a/scene/gui/reference_rect.cpp +++ b/scene/gui/reference_rect.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/reference_rect.h b/scene/gui/reference_rect.h index b64f479829..b118425eb6 100644 --- a/scene/gui/reference_rect.h +++ b/scene/gui/reference_rect.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/rich_text_label.cpp b/scene/gui/rich_text_label.cpp index eaa2a66a56..e5a17298e4 100644 --- a/scene/gui/rich_text_label.cpp +++ b/scene/gui/rich_text_label.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/rich_text_label.h b/scene/gui/rich_text_label.h index a5f23d0ba9..05d98b3ee8 100644 --- a/scene/gui/rich_text_label.h +++ b/scene/gui/rich_text_label.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/scroll_bar.cpp b/scene/gui/scroll_bar.cpp index b27104f788..6475371eb9 100644 --- a/scene/gui/scroll_bar.cpp +++ b/scene/gui/scroll_bar.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/scroll_bar.h b/scene/gui/scroll_bar.h index 5227fa45ac..9f035b4901 100644 --- a/scene/gui/scroll_bar.h +++ b/scene/gui/scroll_bar.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/scroll_container.cpp b/scene/gui/scroll_container.cpp index c543b783b9..9146fa9393 100644 --- a/scene/gui/scroll_container.cpp +++ b/scene/gui/scroll_container.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/scroll_container.h b/scene/gui/scroll_container.h index 07b127843a..bbc6d829ef 100644 --- a/scene/gui/scroll_container.h +++ b/scene/gui/scroll_container.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/separator.cpp b/scene/gui/separator.cpp index e256b8f928..3b00ab4605 100644 --- a/scene/gui/separator.cpp +++ b/scene/gui/separator.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/separator.h b/scene/gui/separator.h index 7913531748..9a5fe2ac66 100644 --- a/scene/gui/separator.h +++ b/scene/gui/separator.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/slider.cpp b/scene/gui/slider.cpp index 365d450ed6..d2a2ff7966 100644 --- a/scene/gui/slider.cpp +++ b/scene/gui/slider.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/slider.h b/scene/gui/slider.h index f649a4d150..61ad76e31e 100644 --- a/scene/gui/slider.h +++ b/scene/gui/slider.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/spin_box.cpp b/scene/gui/spin_box.cpp index 3f21093fb7..049adc6fb4 100644 --- a/scene/gui/spin_box.cpp +++ b/scene/gui/spin_box.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/spin_box.h b/scene/gui/spin_box.h index eba58402fa..338ae875f0 100644 --- a/scene/gui/spin_box.h +++ b/scene/gui/spin_box.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/split_container.cpp b/scene/gui/split_container.cpp index 11d068b048..df24fa84d8 100644 --- a/scene/gui/split_container.cpp +++ b/scene/gui/split_container.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/split_container.h b/scene/gui/split_container.h index 8db6bfa658..12722c9f95 100644 --- a/scene/gui/split_container.h +++ b/scene/gui/split_container.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/tab_container.cpp b/scene/gui/tab_container.cpp index 89769937d4..0ef6fbdebd 100644 --- a/scene/gui/tab_container.cpp +++ b/scene/gui/tab_container.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/tab_container.h b/scene/gui/tab_container.h index 2594611844..87a99c82b8 100644 --- a/scene/gui/tab_container.h +++ b/scene/gui/tab_container.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/tabs.cpp b/scene/gui/tabs.cpp index 3197553876..fb27f3b017 100644 --- a/scene/gui/tabs.cpp +++ b/scene/gui/tabs.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/tabs.h b/scene/gui/tabs.h index 39811f13c2..2392327206 100644 --- a/scene/gui/tabs.h +++ b/scene/gui/tabs.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/text_edit.cpp b/scene/gui/text_edit.cpp index 7a7ce57ef7..80c6a23b61 100644 --- a/scene/gui/text_edit.cpp +++ b/scene/gui/text_edit.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/text_edit.h b/scene/gui/text_edit.h index 4032cf2533..d5fe2950f4 100644 --- a/scene/gui/text_edit.h +++ b/scene/gui/text_edit.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/texture_button.cpp b/scene/gui/texture_button.cpp index 54f09cbf68..33d9b76b70 100644 --- a/scene/gui/texture_button.cpp +++ b/scene/gui/texture_button.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/texture_button.h b/scene/gui/texture_button.h index fc5079dbf9..9c31912a32 100644 --- a/scene/gui/texture_button.h +++ b/scene/gui/texture_button.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/texture_progress.cpp b/scene/gui/texture_progress.cpp index 914d17d2dc..081c7ddb73 100644 --- a/scene/gui/texture_progress.cpp +++ b/scene/gui/texture_progress.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/texture_progress.h b/scene/gui/texture_progress.h index 0d9b5e6b1a..c0c2779cf9 100644 --- a/scene/gui/texture_progress.h +++ b/scene/gui/texture_progress.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/texture_rect.cpp b/scene/gui/texture_rect.cpp index ea35ee8b52..92a3db6a74 100644 --- a/scene/gui/texture_rect.cpp +++ b/scene/gui/texture_rect.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/texture_rect.h b/scene/gui/texture_rect.h index 2cc6b97b13..dcc6c3f9bd 100644 --- a/scene/gui/texture_rect.h +++ b/scene/gui/texture_rect.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/tool_button.cpp b/scene/gui/tool_button.cpp index 817b506f10..5fc4b6ecf8 100644 --- a/scene/gui/tool_button.cpp +++ b/scene/gui/tool_button.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/tool_button.h b/scene/gui/tool_button.h index 02d2bfaef1..d243b5559f 100644 --- a/scene/gui/tool_button.h +++ b/scene/gui/tool_button.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/tree.cpp b/scene/gui/tree.cpp index 9a999c9323..1cfaa58b92 100644 --- a/scene/gui/tree.cpp +++ b/scene/gui/tree.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/tree.h b/scene/gui/tree.h index 68d4453156..3830c3e8ca 100644 --- a/scene/gui/tree.h +++ b/scene/gui/tree.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/video_player.cpp b/scene/gui/video_player.cpp index 433cc546a6..e1a149d801 100644 --- a/scene/gui/video_player.cpp +++ b/scene/gui/video_player.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/video_player.h b/scene/gui/video_player.h index 4f2894cdc2..c3a839c514 100644 --- a/scene/gui/video_player.h +++ b/scene/gui/video_player.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/viewport_container.cpp b/scene/gui/viewport_container.cpp index 93789d945d..dbc2699867 100644 --- a/scene/gui/viewport_container.cpp +++ b/scene/gui/viewport_container.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/gui/viewport_container.h b/scene/gui/viewport_container.h index 96b352b1cc..27eb6ec81b 100644 --- a/scene/gui/viewport_container.h +++ b/scene/gui/viewport_container.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/io/resource_format_image.cpp b/scene/io/resource_format_image.cpp index 6a550a847d..6c0a6128d2 100644 --- a/scene/io/resource_format_image.cpp +++ b/scene/io/resource_format_image.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/io/resource_format_image.h b/scene/io/resource_format_image.h index 0638e97787..2cf6315f17 100644 --- a/scene/io/resource_format_image.h +++ b/scene/io/resource_format_image.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/io/resource_format_wav.cpp b/scene/io/resource_format_wav.cpp index 0d64743d1e..53eefd26fe 100644 --- a/scene/io/resource_format_wav.cpp +++ b/scene/io/resource_format_wav.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/io/resource_format_wav.h b/scene/io/resource_format_wav.h index fd274625f9..9105689670 100644 --- a/scene/io/resource_format_wav.h +++ b/scene/io/resource_format_wav.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/main/canvas_layer.cpp b/scene/main/canvas_layer.cpp index 1fecb6fd9a..150aee99ba 100644 --- a/scene/main/canvas_layer.cpp +++ b/scene/main/canvas_layer.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/main/canvas_layer.h b/scene/main/canvas_layer.h index 26d21e3a0f..1be6f8be24 100644 --- a/scene/main/canvas_layer.h +++ b/scene/main/canvas_layer.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/main/http_request.cpp b/scene/main/http_request.cpp index 38ee03ab47..783afc8b58 100644 --- a/scene/main/http_request.cpp +++ b/scene/main/http_request.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/main/http_request.h b/scene/main/http_request.h index 2b2d7f9a38..6099d4e9bf 100644 --- a/scene/main/http_request.h +++ b/scene/main/http_request.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/main/instance_placeholder.cpp b/scene/main/instance_placeholder.cpp index 469a5e9441..8668020b2c 100644 --- a/scene/main/instance_placeholder.cpp +++ b/scene/main/instance_placeholder.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/main/instance_placeholder.h b/scene/main/instance_placeholder.h index 7900e35b00..ec4520e1c8 100644 --- a/scene/main/instance_placeholder.h +++ b/scene/main/instance_placeholder.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/main/node.cpp b/scene/main/node.cpp index 42e9cec217..cfee5066b4 100755 --- a/scene/main/node.cpp +++ b/scene/main/node.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -2063,10 +2064,14 @@ void Node::set_editable_instance(Node *p_node, bool p_editable) { ERR_FAIL_NULL(p_node); ERR_FAIL_COND(!is_a_parent_of(p_node)); NodePath p = get_path_to(p_node); - if (!p_editable) + if (!p_editable) { data.editable_instances.erase(p); - else + // Avoid this flag being needlessly saved; + // also give more visual feedback if editable children is reenabled + set_display_folded(false); + } else { data.editable_instances[p] = true; + } } bool Node::is_editable_instance(Node *p_node) const { diff --git a/scene/main/node.h b/scene/main/node.h index 714a58bd82..4a41fb82ab 100644 --- a/scene/main/node.h +++ b/scene/main/node.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/main/resource_preloader.cpp b/scene/main/resource_preloader.cpp index c08a6bcd5b..ae323ba021 100644 --- a/scene/main/resource_preloader.cpp +++ b/scene/main/resource_preloader.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/main/resource_preloader.h b/scene/main/resource_preloader.h index 5fba70c1c0..a54781dc81 100644 --- a/scene/main/resource_preloader.h +++ b/scene/main/resource_preloader.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/main/scene_main_loop.cpp b/scene/main/scene_main_loop.cpp index 8eb09908ad..83f60bb9e9 100644 --- a/scene/main/scene_main_loop.cpp +++ b/scene/main/scene_main_loop.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -682,24 +683,24 @@ void SceneTree::set_quit_on_go_back(bool p_enable) { quit_on_go_back = p_enable; } +#ifdef TOOLS_ENABLED void SceneTree::set_editor_hint(bool p_enabled) { editor_hint = p_enabled; } bool SceneTree::is_node_being_edited(const Node *p_node) const { -#ifdef TOOLS_ENABLED + return editor_hint && edited_scene_root && edited_scene_root->is_a_parent_of(p_node); -#else - return false; -#endif } bool SceneTree::is_editor_hint() const { return editor_hint; } +#endif +#ifdef DEBUG_ENABLED void SceneTree::set_debug_collisions_hint(bool p_enabled) { debug_collisions_hint = p_enabled; @@ -719,6 +720,7 @@ bool SceneTree::is_debugging_navigation_hint() const { return debug_navigation_hint; } +#endif void SceneTree::set_debug_collisions_color(const Color &p_color) { @@ -765,12 +767,12 @@ Ref<Material> SceneTree::get_debug_navigation_material() { if (navigation_material.is_valid()) return navigation_material; - Ref<FixedSpatialMaterial> line_material = Ref<FixedSpatialMaterial>(memnew(FixedSpatialMaterial)); + Ref<SpatialMaterial> line_material = Ref<SpatialMaterial>(memnew(SpatialMaterial)); /* line_material->set_flag(Material::FLAG_UNSHADED, true); line_material->set_line_width(3.0); - line_material->set_fixed_flag(FixedSpatialMaterial::FLAG_USE_ALPHA, true); - line_material->set_fixed_flag(FixedSpatialMaterial::FLAG_USE_COLOR_ARRAY, true); - line_material->set_parameter(FixedSpatialMaterial::PARAM_DIFFUSE,get_debug_navigation_color());*/ + line_material->set_fixed_flag(SpatialMaterial::FLAG_USE_ALPHA, true); + line_material->set_fixed_flag(SpatialMaterial::FLAG_USE_COLOR_ARRAY, true); + line_material->set_parameter(SpatialMaterial::PARAM_DIFFUSE,get_debug_navigation_color());*/ navigation_material = line_material; @@ -782,12 +784,12 @@ Ref<Material> SceneTree::get_debug_navigation_disabled_material() { if (navigation_disabled_material.is_valid()) return navigation_disabled_material; - Ref<FixedSpatialMaterial> line_material = Ref<FixedSpatialMaterial>(memnew(FixedSpatialMaterial)); + Ref<SpatialMaterial> line_material = Ref<SpatialMaterial>(memnew(SpatialMaterial)); /* line_material->set_flag(Material::FLAG_UNSHADED, true); line_material->set_line_width(3.0); - line_material->set_fixed_flag(FixedSpatialMaterial::FLAG_USE_ALPHA, true); - line_material->set_fixed_flag(FixedSpatialMaterial::FLAG_USE_COLOR_ARRAY, true); - line_material->set_parameter(FixedSpatialMaterial::PARAM_DIFFUSE,get_debug_navigation_disabled_color());*/ + line_material->set_fixed_flag(SpatialMaterial::FLAG_USE_ALPHA, true); + line_material->set_fixed_flag(SpatialMaterial::FLAG_USE_COLOR_ARRAY, true); + line_material->set_parameter(SpatialMaterial::PARAM_DIFFUSE,get_debug_navigation_disabled_color());*/ navigation_disabled_material = line_material; @@ -798,12 +800,12 @@ Ref<Material> SceneTree::get_debug_collision_material() { if (collision_material.is_valid()) return collision_material; - Ref<FixedSpatialMaterial> line_material = Ref<FixedSpatialMaterial>(memnew(FixedSpatialMaterial)); + Ref<SpatialMaterial> line_material = Ref<SpatialMaterial>(memnew(SpatialMaterial)); /*line_material->set_flag(Material::FLAG_UNSHADED, true); line_material->set_line_width(3.0); - line_material->set_fixed_flag(FixedSpatialMaterial::FLAG_USE_ALPHA, true); - line_material->set_fixed_flag(FixedSpatialMaterial::FLAG_USE_COLOR_ARRAY, true); - line_material->set_parameter(FixedSpatialMaterial::PARAM_DIFFUSE,get_debug_collisions_color());*/ + line_material->set_fixed_flag(SpatialMaterial::FLAG_USE_ALPHA, true); + line_material->set_fixed_flag(SpatialMaterial::FLAG_USE_COLOR_ARRAY, true); + line_material->set_parameter(SpatialMaterial::PARAM_DIFFUSE,get_debug_collisions_color());*/ collision_material = line_material; @@ -817,11 +819,11 @@ Ref<Mesh> SceneTree::get_debug_contact_mesh() { debug_contact_mesh = Ref<Mesh>(memnew(Mesh)); - Ref<FixedSpatialMaterial> mat = memnew(FixedSpatialMaterial); + Ref<SpatialMaterial> mat = memnew(SpatialMaterial); /*mat->set_flag(Material::FLAG_UNSHADED,true); mat->set_flag(Material::FLAG_DOUBLE_SIDED,true); - mat->set_fixed_flag(FixedSpatialMaterial::FLAG_USE_ALPHA,true); - mat->set_parameter(FixedSpatialMaterial::PARAM_DIFFUSE,get_debug_collision_contact_color());*/ + mat->set_fixed_flag(SpatialMaterial::FLAG_USE_ALPHA,true); + mat->set_parameter(SpatialMaterial::PARAM_DIFFUSE,get_debug_collision_contact_color());*/ Vector3 diamond[6] = { Vector3(-1, 0, 0), @@ -2265,9 +2267,13 @@ SceneTree::SceneTree() { singleton = this; _quit = false; initialized = false; +#ifdef TOOLS_ENABLED editor_hint = false; +#endif +#ifdef DEBUG_ENABLED debug_collisions_hint = false; debug_navigation_hint = false; +#endif debug_collisions_color = GLOBAL_DEF("debug/collision/shape_color", Color(0.0, 0.6, 0.7, 0.5)); debug_collision_contact_color = GLOBAL_DEF("debug/collision/contact_color", Color(1.0, 0.2, 0.1, 0.8)); debug_navigation_color = GLOBAL_DEF("debug/navigation/geometry_color", Color(0.1, 1.0, 0.7, 0.4)); diff --git a/scene/main/scene_main_loop.h b/scene/main/scene_main_loop.h index 47220b9b63..52d5f5c88c 100644 --- a/scene/main/scene_main_loop.h +++ b/scene/main/scene_main_loop.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -108,9 +109,13 @@ private: bool quit_on_go_back; uint32_t last_id; +#ifdef TOOLS_ENABLED bool editor_hint; +#endif +#ifdef DEBUG_ENABLED bool debug_collisions_hint; bool debug_navigation_hint; +#endif bool pause; int root_lock; @@ -354,10 +359,17 @@ public: _FORCE_INLINE_ float get_fixed_process_time() const { return fixed_process_time; } _FORCE_INLINE_ float get_idle_process_time() const { return idle_process_time; } +#ifdef TOOLS_ENABLED void set_editor_hint(bool p_enabled); - bool is_editor_hint() const; + bool is_editor_hint() const; bool is_node_being_edited(const Node *p_node) const; +#else + void set_editor_hint(bool p_enabled) {} + + bool is_editor_hint() const { return false; } + bool is_node_being_edited(const Node *p_node) const { return false; } +#endif void set_pause(bool p_enabled); bool is_paused() const; @@ -365,11 +377,19 @@ public: void set_camera(const RID &p_camera); RID get_camera() const; +#ifdef DEBUG_ENABLED void set_debug_collisions_hint(bool p_enabled); bool is_debugging_collisions_hint() const; void set_debug_navigation_hint(bool p_enabled); bool is_debugging_navigation_hint() const; +#else + void set_debug_collisions_hint(bool p_enabled) {} + bool is_debugging_collisions_hint() const { return false; } + + void set_debug_navigation_hint(bool p_enabled) {} + bool is_debugging_navigation_hint() const { return false; } +#endif void set_debug_collisions_color(const Color &p_color); Color get_debug_collisions_color() const; diff --git a/scene/main/timer.cpp b/scene/main/timer.cpp index aeb72a6d1e..a61d1100e6 100755 --- a/scene/main/timer.cpp +++ b/scene/main/timer.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/main/timer.h b/scene/main/timer.h index 53a2ddb2bd..dd4711ec37 100755 --- a/scene/main/timer.h +++ b/scene/main/timer.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/main/viewport.cpp b/scene/main/viewport.cpp index 3b8fd1ae3e..31c9cb15a8 100644 --- a/scene/main/viewport.cpp +++ b/scene/main/viewport.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/main/viewport.h b/scene/main/viewport.h index 3fc781c62c..242ee4b4e6 100644 --- a/scene/main/viewport.h +++ b/scene/main/viewport.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/register_scene_types.cpp b/scene/register_scene_types.cpp index 06dae328f4..513aa8153d 100644 --- a/scene/register_scene_types.cpp +++ b/scene/register_scene_types.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -423,7 +424,7 @@ void register_scene_types() { ClassDB::register_class<GIProbeData>(); ClassDB::register_class<AnimationTreePlayer>(); ClassDB::register_class<Portal>(); - //ClassDB::register_type<Particles>(); + ClassDB::register_class<Particles>(); ClassDB::register_class<Position3D>(); ClassDB::register_class<Quad>(); ClassDB::register_class<NavigationMeshInstance>(); @@ -471,7 +472,8 @@ void register_scene_types() { ClassDB::register_class<MeshLibrary>(); AcceptDialog::set_swap_ok_cancel(GLOBAL_DEF("gui/common/swap_ok_cancel", bool(OS::get_singleton()->get_swap_ok_cancel()))); - ClassDB::register_class<CanvasItemMaterial>(); + ClassDB::register_class<Shader>(); + ClassDB::register_class<ShaderMaterial>(); ClassDB::register_virtual_class<CanvasItem>(); ClassDB::register_class<Node2D>(); ClassDB::register_class<Particles2D>(); @@ -519,21 +521,22 @@ void register_scene_types() { /* REGISTER RESOURCES */ ClassDB::register_virtual_class<Shader>(); - //ClassDB::register_virtual_type<ShaderGraph>(); - ClassDB::register_class<CanvasItemShader>(); -//ClassDB::register_type<CanvasItemShaderGraph>(); #ifndef _3D_DISABLED ClassDB::register_class<Mesh>(); + ClassDB::register_class<QuadMesh>(); ClassDB::register_virtual_class<Material>(); - ClassDB::register_class<FixedSpatialMaterial>(); - SceneTree::add_idle_callback(FixedSpatialMaterial::flush_changes); - FixedSpatialMaterial::init_shaders(); + ClassDB::register_class<SpatialMaterial>(); + ClassDB::add_compatibility_class("FixedSpatialMaterial", "SpatialMaterial"); + SceneTree::add_idle_callback(SpatialMaterial::flush_changes); + SpatialMaterial::init_shaders(); + + ClassDB::register_class<ParticlesMaterial>(); + SceneTree::add_idle_callback(ParticlesMaterial::flush_changes); + ParticlesMaterial::init_shaders(); + //ClassDB::register_type<ShaderMaterial>(); ClassDB::register_class<RoomBounds>(); - //ClassDB::register_type<MaterialShaderGraph>(); - ClassDB::register_class<SpatialShader>(); - ClassDB::register_class<ParticlesShader>(); ClassDB::register_class<MultiMesh>(); ClassDB::register_class<MeshLibrary>(); @@ -564,6 +567,8 @@ void register_scene_types() { ClassDB::register_class<ImageTexture>(); ClassDB::register_class<AtlasTexture>(); ClassDB::register_class<LargeTexture>(); + ClassDB::register_class<CurveTexture>(); + ClassDB::register_class<GradientTexture>(); ClassDB::register_class<CubeMap>(); ClassDB::register_class<Animation>(); ClassDB::register_virtual_class<Font>(); @@ -651,6 +656,7 @@ void unregister_scene_types() { memdelete(resource_loader_text); } - FixedSpatialMaterial::finish_shaders(); + SpatialMaterial::finish_shaders(); + ParticlesMaterial::finish_shaders(); SceneStringNames::free(); } diff --git a/scene/register_scene_types.h b/scene/register_scene_types.h index 090254c5f7..dee0af9063 100644 --- a/scene/register_scene_types.h +++ b/scene/register_scene_types.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/animation.cpp b/scene/resources/animation.cpp index 4fddd55e20..cebec379e6 100644 --- a/scene/resources/animation.cpp +++ b/scene/resources/animation.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/animation.h b/scene/resources/animation.h index 57ab8b282f..ef5befac65 100644 --- a/scene/resources/animation.h +++ b/scene/resources/animation.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/audio_stream_resampled.cpp b/scene/resources/audio_stream_resampled.cpp index 1c0c725ef9..213ac4400b 100644 --- a/scene/resources/audio_stream_resampled.cpp +++ b/scene/resources/audio_stream_resampled.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/audio_stream_resampled.h b/scene/resources/audio_stream_resampled.h index 7ceb6cef84..53fa3bd0b9 100644 --- a/scene/resources/audio_stream_resampled.h +++ b/scene/resources/audio_stream_resampled.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/audio_stream_sample.cpp b/scene/resources/audio_stream_sample.cpp index 8e40911887..4f2ab18637 100644 --- a/scene/resources/audio_stream_sample.cpp +++ b/scene/resources/audio_stream_sample.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/audio_stream_sample.h b/scene/resources/audio_stream_sample.h index d5d1ae79c0..84d450e3f2 100644 --- a/scene/resources/audio_stream_sample.h +++ b/scene/resources/audio_stream_sample.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/baked_light.cpp b/scene/resources/baked_light.cpp index 7fa930fd58..1d896e640a 100644 --- a/scene/resources/baked_light.cpp +++ b/scene/resources/baked_light.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/baked_light.h b/scene/resources/baked_light.h index 7dee40b34e..8d25c9caa2 100644 --- a/scene/resources/baked_light.h +++ b/scene/resources/baked_light.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/bit_mask.cpp b/scene/resources/bit_mask.cpp index 277acad905..b8a9ea3361 100644 --- a/scene/resources/bit_mask.cpp +++ b/scene/resources/bit_mask.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/bit_mask.h b/scene/resources/bit_mask.h index 3cee2279b8..78da6ce0d8 100644 --- a/scene/resources/bit_mask.h +++ b/scene/resources/bit_mask.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/bounds.cpp b/scene/resources/bounds.cpp index 974ff76cd0..b088426013 100644 --- a/scene/resources/bounds.cpp +++ b/scene/resources/bounds.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/bounds.h b/scene/resources/bounds.h index 62e1b8e0ef..8c0d1dcf6e 100644 --- a/scene/resources/bounds.h +++ b/scene/resources/bounds.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/box_shape.cpp b/scene/resources/box_shape.cpp index 1e9991d7dc..fedfc71313 100644 --- a/scene/resources/box_shape.cpp +++ b/scene/resources/box_shape.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/box_shape.h b/scene/resources/box_shape.h index 2bab6d9b8a..fdf1e98020 100644 --- a/scene/resources/box_shape.h +++ b/scene/resources/box_shape.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/canvas.cpp b/scene/resources/canvas.cpp index dd0375b765..b6a909f3fa 100644 --- a/scene/resources/canvas.cpp +++ b/scene/resources/canvas.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/canvas.h b/scene/resources/canvas.h index 1d3775c30c..331a997914 100644 --- a/scene/resources/canvas.h +++ b/scene/resources/canvas.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/capsule_shape.cpp b/scene/resources/capsule_shape.cpp index 1aa3fee0ca..1fcc9da5b6 100644 --- a/scene/resources/capsule_shape.cpp +++ b/scene/resources/capsule_shape.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/capsule_shape.h b/scene/resources/capsule_shape.h index ecffdd8ce7..2864e7e23f 100644 --- a/scene/resources/capsule_shape.h +++ b/scene/resources/capsule_shape.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/capsule_shape_2d.cpp b/scene/resources/capsule_shape_2d.cpp index d24640e43d..3f41526bcb 100644 --- a/scene/resources/capsule_shape_2d.cpp +++ b/scene/resources/capsule_shape_2d.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/capsule_shape_2d.h b/scene/resources/capsule_shape_2d.h index 05d819c1d5..93e7d846a4 100644 --- a/scene/resources/capsule_shape_2d.h +++ b/scene/resources/capsule_shape_2d.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/circle_shape_2d.cpp b/scene/resources/circle_shape_2d.cpp index 2271a3ad93..4512e1c4a9 100644 --- a/scene/resources/circle_shape_2d.cpp +++ b/scene/resources/circle_shape_2d.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/circle_shape_2d.h b/scene/resources/circle_shape_2d.h index 11fdc51f09..a4a4601e66 100644 --- a/scene/resources/circle_shape_2d.h +++ b/scene/resources/circle_shape_2d.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/color_ramp.cpp b/scene/resources/color_ramp.cpp index 2c20ad527b..3c58a76998 100644 --- a/scene/resources/color_ramp.cpp +++ b/scene/resources/color_ramp.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/color_ramp.h b/scene/resources/color_ramp.h index 78c88c3270..e231e9fc52 100644 --- a/scene/resources/color_ramp.h +++ b/scene/resources/color_ramp.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/concave_polygon_shape.cpp b/scene/resources/concave_polygon_shape.cpp index 0031580153..47cc49c631 100644 --- a/scene/resources/concave_polygon_shape.cpp +++ b/scene/resources/concave_polygon_shape.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/concave_polygon_shape.h b/scene/resources/concave_polygon_shape.h index f048a4d151..a8f9d50674 100644 --- a/scene/resources/concave_polygon_shape.h +++ b/scene/resources/concave_polygon_shape.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/concave_polygon_shape_2d.cpp b/scene/resources/concave_polygon_shape_2d.cpp index 04a69d9c8e..653540a663 100644 --- a/scene/resources/concave_polygon_shape_2d.cpp +++ b/scene/resources/concave_polygon_shape_2d.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/concave_polygon_shape_2d.h b/scene/resources/concave_polygon_shape_2d.h index 23c602980c..d4c102e0d6 100644 --- a/scene/resources/concave_polygon_shape_2d.h +++ b/scene/resources/concave_polygon_shape_2d.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/convex_polygon_shape.cpp b/scene/resources/convex_polygon_shape.cpp index 350c4c2d86..10e92b43ae 100644 --- a/scene/resources/convex_polygon_shape.cpp +++ b/scene/resources/convex_polygon_shape.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/convex_polygon_shape.h b/scene/resources/convex_polygon_shape.h index 6701c41f0f..4340b0ef7c 100644 --- a/scene/resources/convex_polygon_shape.h +++ b/scene/resources/convex_polygon_shape.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/convex_polygon_shape_2d.cpp b/scene/resources/convex_polygon_shape_2d.cpp index 311614b7c1..fcbf66c8cd 100644 --- a/scene/resources/convex_polygon_shape_2d.cpp +++ b/scene/resources/convex_polygon_shape_2d.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/convex_polygon_shape_2d.h b/scene/resources/convex_polygon_shape_2d.h index edb302ba5e..ba4a5ae8aa 100644 --- a/scene/resources/convex_polygon_shape_2d.h +++ b/scene/resources/convex_polygon_shape_2d.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/curve.cpp b/scene/resources/curve.cpp index f85220ac23..10c12c9411 100644 --- a/scene/resources/curve.cpp +++ b/scene/resources/curve.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/curve.h b/scene/resources/curve.h index eae52d7bd4..17c0ac9f5e 100644 --- a/scene/resources/curve.h +++ b/scene/resources/curve.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/default_theme/default_theme.cpp b/scene/resources/default_theme/default_theme.cpp index 3f19c2eafc..595c0ecfd8 100644 --- a/scene/resources/default_theme/default_theme.cpp +++ b/scene/resources/default_theme/default_theme.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -120,7 +121,7 @@ static Ref<Texture> make_icon(T p_src) { } static Ref<Shader> make_shader(const char *vertex_code, const char *fragment_code, const char *lighting_code) { - Ref<Shader> shader = (memnew(Shader(Shader::MODE_CANVAS_ITEM))); + Ref<Shader> shader = (memnew(Shader())); //shader->set_code(vertex_code, fragment_code, lighting_code); return shader; diff --git a/scene/resources/default_theme/default_theme.h b/scene/resources/default_theme/default_theme.h index fc557e4270..6fd57b6f22 100644 --- a/scene/resources/default_theme/default_theme.h +++ b/scene/resources/default_theme/default_theme.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/dynamic_font.cpp b/scene/resources/dynamic_font.cpp index 3fbfbc705a..6a5c4b97fc 100644 --- a/scene/resources/dynamic_font.cpp +++ b/scene/resources/dynamic_font.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/dynamic_font.h b/scene/resources/dynamic_font.h index 4243ab2c03..7c94def5aa 100644 --- a/scene/resources/dynamic_font.h +++ b/scene/resources/dynamic_font.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/dynamic_font_stb.cpp b/scene/resources/dynamic_font_stb.cpp index 7b62ccc369..0a784c6496 100644 --- a/scene/resources/dynamic_font_stb.cpp +++ b/scene/resources/dynamic_font_stb.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/dynamic_font_stb.h b/scene/resources/dynamic_font_stb.h index 0c17e3a8b3..3862607ab5 100644 --- a/scene/resources/dynamic_font_stb.h +++ b/scene/resources/dynamic_font_stb.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/environment.cpp b/scene/resources/environment.cpp index b134d8052b..96871cc944 100644 --- a/scene/resources/environment.cpp +++ b/scene/resources/environment.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/environment.h b/scene/resources/environment.h index 3ac311f4a3..9014a9f5c2 100644 --- a/scene/resources/environment.h +++ b/scene/resources/environment.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/font.cpp b/scene/resources/font.cpp index 9f30474a26..692dc47677 100644 --- a/scene/resources/font.cpp +++ b/scene/resources/font.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/font.h b/scene/resources/font.h index 332017684d..20978acccd 100644 --- a/scene/resources/font.h +++ b/scene/resources/font.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/gibberish_stream.cpp b/scene/resources/gibberish_stream.cpp index fdc5bf01e8..e2994f1419 100644 --- a/scene/resources/gibberish_stream.cpp +++ b/scene/resources/gibberish_stream.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/gibberish_stream.h b/scene/resources/gibberish_stream.h index 257a1faebf..ebe61382eb 100644 --- a/scene/resources/gibberish_stream.h +++ b/scene/resources/gibberish_stream.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/material.cpp b/scene/resources/material.cpp index 90be6374ea..48299d566c 100644 --- a/scene/resources/material.cpp +++ b/scene/resources/material.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -44,14 +45,132 @@ Material::~Material() { VisualServer::get_singleton()->free(material); } +/////////////////////////////////// + +bool ShaderMaterial::_set(const StringName &p_name, const Variant &p_value) { + + if (p_name == SceneStringNames::get_singleton()->shader_shader) { + set_shader(p_value); + return true; + } else { + + if (shader.is_valid()) { + + StringName pr = shader->remap_param(p_name); + if (!pr) { + String n = p_name; + if (n.find("param/") == 0) { //backwards compatibility + pr = n.substr(6, n.length()); + } + } + if (pr) { + VisualServer::get_singleton()->material_set_param(_get_material(), pr, p_value); + return true; + } + } + } + + return false; +} + +bool ShaderMaterial::_get(const StringName &p_name, Variant &r_ret) const { + + if (p_name == SceneStringNames::get_singleton()->shader_shader) { + + r_ret = get_shader(); + return true; + + } else { + + if (shader.is_valid()) { + + StringName pr = shader->remap_param(p_name); + if (pr) { + r_ret = VisualServer::get_singleton()->material_get_param(_get_material(), pr); + return true; + } + } + } + + return false; +} + +void ShaderMaterial::_get_property_list(List<PropertyInfo> *p_list) const { + + p_list->push_back(PropertyInfo(Variant::OBJECT, "shader/shader", PROPERTY_HINT_RESOURCE_TYPE, "Shader,ShaderGraph")); + + if (!shader.is_null()) { + + shader->get_param_list(p_list); + } +} + +void ShaderMaterial::set_shader(const Ref<Shader> &p_shader) { + + shader = p_shader; + + RID rid; + if (shader.is_valid()) + rid = shader->get_rid(); + + VS::get_singleton()->material_set_shader(_get_material(), rid); + _change_notify(); //properties for shader exposed + emit_changed(); +} + +Ref<Shader> ShaderMaterial::get_shader() const { + + return shader; +} + +void ShaderMaterial::set_shader_param(const StringName &p_param, const Variant &p_value) { + + VS::get_singleton()->material_set_param(_get_material(), p_param, p_value); +} + +Variant ShaderMaterial::get_shader_param(const StringName &p_param) const { + + return VS::get_singleton()->material_get_param(_get_material(), p_param); +} + +void ShaderMaterial::_bind_methods() { + + ClassDB::bind_method(D_METHOD("set_shader", "shader:Shader"), &ShaderMaterial::set_shader); + ClassDB::bind_method(D_METHOD("get_shader:Shader"), &ShaderMaterial::get_shader); + ClassDB::bind_method(D_METHOD("set_shader_param", "param", "value"), &ShaderMaterial::set_shader_param); + ClassDB::bind_method(D_METHOD("get_shader_param", "param"), &ShaderMaterial::get_shader_param); +} + +void ShaderMaterial::get_argument_options(const StringName &p_function, int p_idx, List<String> *r_options) const { + + String f = p_function.operator String(); + if ((f == "get_shader_param" || f == "set_shader_param") && p_idx == 0) { + + if (shader.is_valid()) { + List<PropertyInfo> pl; + shader->get_param_list(&pl); + for (List<PropertyInfo>::Element *E = pl.front(); E; E = E->next()) { + r_options->push_back("\"" + E->get().name.replace_first("shader_param/", "") + "\""); + } + } + } + Resource::get_argument_options(p_function, p_idx, r_options); +} + +ShaderMaterial::ShaderMaterial() { +} + +ShaderMaterial::~ShaderMaterial() { +} + ///////////////////////////////// -Mutex *FixedSpatialMaterial::material_mutex = NULL; -SelfList<FixedSpatialMaterial>::List FixedSpatialMaterial::dirty_materials; -Map<FixedSpatialMaterial::MaterialKey, FixedSpatialMaterial::ShaderData> FixedSpatialMaterial::shader_map; -FixedSpatialMaterial::ShaderNames *FixedSpatialMaterial::shader_names = NULL; +Mutex *SpatialMaterial::material_mutex = NULL; +SelfList<SpatialMaterial>::List SpatialMaterial::dirty_materials; +Map<SpatialMaterial::MaterialKey, SpatialMaterial::ShaderData> SpatialMaterial::shader_map; +SpatialMaterial::ShaderNames *SpatialMaterial::shader_names = NULL; -void FixedSpatialMaterial::init_shaders() { +void SpatialMaterial::init_shaders() { #ifndef NO_THREADS material_mutex = Mutex::create(); @@ -81,6 +200,10 @@ void FixedSpatialMaterial::init_shaders() { shader_names->uv2_scale = "uv2_scale"; shader_names->uv2_offset = "uv2_offset"; + shader_names->particle_h_frames = "particle_h_frames"; + shader_names->particle_v_frames = "particle_v_frames"; + shader_names->particles_anim_loop = "particles_anim_loop"; + shader_names->texture_names[TEXTURE_ALBEDO] = "texture_albedo"; shader_names->texture_names[TEXTURE_SPECULAR] = "texture_specular"; shader_names->texture_names[TEXTURE_EMISSION] = "texture_emission"; @@ -98,7 +221,7 @@ void FixedSpatialMaterial::init_shaders() { shader_names->texture_names[TEXTURE_DETAIL_NORMAL] = "texture_detail_normal"; } -void FixedSpatialMaterial::finish_shaders() { +void SpatialMaterial::finish_shaders() { #ifndef NO_THREADS memdelete(material_mutex); @@ -107,7 +230,7 @@ void FixedSpatialMaterial::finish_shaders() { memdelete(shader_names); } -void FixedSpatialMaterial::_update_shader() { +void SpatialMaterial::_update_shader() { dirty_materials.remove(&element); @@ -135,7 +258,7 @@ void FixedSpatialMaterial::_update_shader() { //must create a shader! - String code = "render_mode "; + String code = "shader_type spatial;\nrender_mode "; switch (blend_mode) { case BLEND_MODE_MIX: code += "blend_mix"; break; case BLEND_MODE_ADD: code += "blend_add"; break; @@ -180,6 +303,11 @@ void FixedSpatialMaterial::_update_shader() { code += "uniform vec2 uv1_offset;\n"; code += "uniform vec2 uv2_scale;\n"; code += "uniform vec2 uv2_offset;\n"; + if (billboard_mode == BILLBOARD_PARTICLES) { + code += "uniform int particles_anim_h_frames;\n"; + code += "uniform int particles_anim_v_frames;\n"; + code += "uniform bool particles_anim_loop;\n"; + } if (features[FEATURE_EMISSION]) { @@ -235,6 +363,58 @@ void FixedSpatialMaterial::_update_shader() { code += "\tPOINT_SIZE=point_size;\n"; } code += "\tUV=UV*uv1_scale+uv1_offset;\n"; + + switch (billboard_mode) { + case BILLBOARD_DISABLED: { + + } break; + case BILLBOARD_ENABLED: { + + code += "\tMODELVIEW_MATRIX = INV_CAMERA_MATRIX * mat4(CAMERA_MATRIX[0],CAMERA_MATRIX[1],CAMERA_MATRIX[2],WORLD_MATRIX[3]);\n"; + } break; + case BILLBOARD_FIXED_Y: { + code += "\tMODELVIEW_MATRIX = INV_CAMERA_MATRIX * mat4(CAMERA_MATRIX[0],WORLD_MATRIX[1],vec4(normalize(cross(CAMERA_MATRIX[0].xyz,WORLD_MATRIX[1].xyz)),0.0),WORLD_MATRIX[3]);\n"; + } break; + case BILLBOARD_PARTICLES: { + + //make billboard + code += "\tmat4 mat_world = mat4(normalize(CAMERA_MATRIX[0])*length(WORLD_MATRIX[0]),normalize(CAMERA_MATRIX[1])*length(WORLD_MATRIX[0]),normalize(CAMERA_MATRIX[2])*length(WORLD_MATRIX[2]),WORLD_MATRIX[3]);\n"; + //rotate by rotation + code += "\tmat_world = mat_world * mat4( vec4(cos(INSTANCE_CUSTOM.x),-sin(INSTANCE_CUSTOM.x),0.0,0.0), vec4(sin(INSTANCE_CUSTOM.x),cos(INSTANCE_CUSTOM.x),0.0,0.0),vec4(0.0,0.0,1.0,0.0),vec4(0.0,0.0,0.0,1.0));\n"; + //set modelview + code += "\tMODELVIEW_MATRIX = INV_CAMERA_MATRIX * mat_world;\n"; + + //handle animation + code += "\tint particle_total_frames = particles_anim_h_frames * particles_anim_v_frames;\n"; + code += "\tint particle_frame = int(INSTANCE_CUSTOM.y * float(particle_total_frames));\n"; + code += "\tif (particles_anim_loop) particle_frame=clamp(particle_frame,0,particle_total_frames-1); else particle_frame=abs(particle_frame)%particle_total_frames;\n"; + //code += "\tUV /= vec2(float(particles_anim_h_frames),float(particles_anim_v_frames));\n"; + //code += "\tUV+= UV * vec2(float(particle_frame % particles_anim_h_frames),float(particle_frame / particles_anim_v_frames));\n"; + //handle rotation + // code += "\tmat4 rotation = mat4(" + + } break; + } + + if (flags[FLAG_FIXED_SIZE]) { + + code += "\tif (PROJECTION_MATRIX[3][3] != 0.0) {\n"; + //orthogonal matrix, try to do about the same + //with viewport size + code += "\t\tfloat h = abs(1.0 / (2.0 * PROJECTION_MATRIX[1][1]));\n"; + code += "\t\tfloat sc = (h * 2.0); //consistent with Y-fov\n"; + code += "\t\tMODELVIEW_MATRIX[0]*=sc;\n"; + code += "\t\tMODELVIEW_MATRIX[1]*=sc;\n"; + code += "\t\tMODELVIEW_MATRIX[2]*=sc;\n"; + code += "\t} else {\n"; + //just scale by depth + code += "\t\tfloat sc = -(MODELVIEW_MATRIX)[3].z;\n"; + code += "\t\tMODELVIEW_MATRIX[0]*=sc;\n"; + code += "\t\tMODELVIEW_MATRIX[1]*=sc;\n"; + code += "\t\tMODELVIEW_MATRIX[2]*=sc;\n"; + code += "\t}\n"; + } + if (detail_uv == DETAIL_UV_2) { code += "\tUV2=UV2*uv2_scale+uv2_offset;\n"; } @@ -336,7 +516,7 @@ void FixedSpatialMaterial::_update_shader() { code += "}\n"; ShaderData shader_data; - shader_data.shader = VS::get_singleton()->shader_create(VS::SHADER_SPATIAL); + shader_data.shader = VS::get_singleton()->shader_create(); shader_data.users = 1; VS::get_singleton()->shader_set_code(shader_data.shader, code); @@ -346,7 +526,7 @@ void FixedSpatialMaterial::_update_shader() { VS::get_singleton()->material_set_shader(_get_material(), shader_data.shader); } -void FixedSpatialMaterial::flush_changes() { +void SpatialMaterial::flush_changes() { if (material_mutex) material_mutex->lock(); @@ -360,7 +540,7 @@ void FixedSpatialMaterial::flush_changes() { material_mutex->unlock(); } -void FixedSpatialMaterial::_queue_shader_change() { +void SpatialMaterial::_queue_shader_change() { if (material_mutex) material_mutex->lock(); @@ -373,7 +553,7 @@ void FixedSpatialMaterial::_queue_shader_change() { material_mutex->unlock(); } -bool FixedSpatialMaterial::_is_shader_dirty() const { +bool SpatialMaterial::_is_shader_dirty() const { bool dirty = false; @@ -387,187 +567,187 @@ bool FixedSpatialMaterial::_is_shader_dirty() const { return dirty; } -void FixedSpatialMaterial::set_albedo(const Color &p_albedo) { +void SpatialMaterial::set_albedo(const Color &p_albedo) { albedo = p_albedo; VS::get_singleton()->material_set_param(_get_material(), shader_names->albedo, p_albedo); } -Color FixedSpatialMaterial::get_albedo() const { +Color SpatialMaterial::get_albedo() const { return albedo; } -void FixedSpatialMaterial::set_specular_mode(SpecularMode p_mode) { +void SpatialMaterial::set_specular_mode(SpecularMode p_mode) { specular_mode = p_mode; _change_notify(); _queue_shader_change(); } -FixedSpatialMaterial::SpecularMode FixedSpatialMaterial::get_specular_mode() const { +SpatialMaterial::SpecularMode SpatialMaterial::get_specular_mode() const { return specular_mode; } -void FixedSpatialMaterial::set_specular(const Color &p_specular) { +void SpatialMaterial::set_specular(const Color &p_specular) { specular = p_specular; VS::get_singleton()->material_set_param(_get_material(), shader_names->specular, p_specular); } -Color FixedSpatialMaterial::get_specular() const { +Color SpatialMaterial::get_specular() const { return specular; } -void FixedSpatialMaterial::set_roughness(float p_roughness) { +void SpatialMaterial::set_roughness(float p_roughness) { roughness = p_roughness; VS::get_singleton()->material_set_param(_get_material(), shader_names->roughness, p_roughness); } -float FixedSpatialMaterial::get_roughness() const { +float SpatialMaterial::get_roughness() const { return roughness; } -void FixedSpatialMaterial::set_metalness(float p_metalness) { +void SpatialMaterial::set_metalness(float p_metalness) { metalness = p_metalness; VS::get_singleton()->material_set_param(_get_material(), shader_names->metalness, p_metalness); } -float FixedSpatialMaterial::get_metalness() const { +float SpatialMaterial::get_metalness() const { return metalness; } -void FixedSpatialMaterial::set_emission(const Color &p_emission) { +void SpatialMaterial::set_emission(const Color &p_emission) { emission = p_emission; VS::get_singleton()->material_set_param(_get_material(), shader_names->emission, p_emission); } -Color FixedSpatialMaterial::get_emission() const { +Color SpatialMaterial::get_emission() const { return emission; } -void FixedSpatialMaterial::set_emission_energy(float p_emission_energy) { +void SpatialMaterial::set_emission_energy(float p_emission_energy) { emission_energy = p_emission_energy; VS::get_singleton()->material_set_param(_get_material(), shader_names->emission_energy, p_emission_energy); } -float FixedSpatialMaterial::get_emission_energy() const { +float SpatialMaterial::get_emission_energy() const { return emission_energy; } -void FixedSpatialMaterial::set_normal_scale(float p_normal_scale) { +void SpatialMaterial::set_normal_scale(float p_normal_scale) { normal_scale = p_normal_scale; VS::get_singleton()->material_set_param(_get_material(), shader_names->normal_scale, p_normal_scale); } -float FixedSpatialMaterial::get_normal_scale() const { +float SpatialMaterial::get_normal_scale() const { return normal_scale; } -void FixedSpatialMaterial::set_rim(float p_rim) { +void SpatialMaterial::set_rim(float p_rim) { rim = p_rim; VS::get_singleton()->material_set_param(_get_material(), shader_names->rim, p_rim); } -float FixedSpatialMaterial::get_rim() const { +float SpatialMaterial::get_rim() const { return rim; } -void FixedSpatialMaterial::set_rim_tint(float p_rim_tint) { +void SpatialMaterial::set_rim_tint(float p_rim_tint) { rim_tint = p_rim_tint; VS::get_singleton()->material_set_param(_get_material(), shader_names->rim_tint, p_rim_tint); } -float FixedSpatialMaterial::get_rim_tint() const { +float SpatialMaterial::get_rim_tint() const { return rim_tint; } -void FixedSpatialMaterial::set_clearcoat(float p_clearcoat) { +void SpatialMaterial::set_clearcoat(float p_clearcoat) { clearcoat = p_clearcoat; VS::get_singleton()->material_set_param(_get_material(), shader_names->clearcoat, p_clearcoat); } -float FixedSpatialMaterial::get_clearcoat() const { +float SpatialMaterial::get_clearcoat() const { return clearcoat; } -void FixedSpatialMaterial::set_clearcoat_gloss(float p_clearcoat_gloss) { +void SpatialMaterial::set_clearcoat_gloss(float p_clearcoat_gloss) { clearcoat_gloss = p_clearcoat_gloss; VS::get_singleton()->material_set_param(_get_material(), shader_names->clearcoat_gloss, p_clearcoat_gloss); } -float FixedSpatialMaterial::get_clearcoat_gloss() const { +float SpatialMaterial::get_clearcoat_gloss() const { return clearcoat_gloss; } -void FixedSpatialMaterial::set_anisotropy(float p_anisotropy) { +void SpatialMaterial::set_anisotropy(float p_anisotropy) { anisotropy = p_anisotropy; VS::get_singleton()->material_set_param(_get_material(), shader_names->anisotropy, p_anisotropy); } -float FixedSpatialMaterial::get_anisotropy() const { +float SpatialMaterial::get_anisotropy() const { return anisotropy; } -void FixedSpatialMaterial::set_height_scale(float p_height_scale) { +void SpatialMaterial::set_height_scale(float p_height_scale) { height_scale = p_height_scale; VS::get_singleton()->material_set_param(_get_material(), shader_names->height_scale, p_height_scale); } -float FixedSpatialMaterial::get_height_scale() const { +float SpatialMaterial::get_height_scale() const { return height_scale; } -void FixedSpatialMaterial::set_subsurface_scattering_strength(float p_subsurface_scattering_strength) { +void SpatialMaterial::set_subsurface_scattering_strength(float p_subsurface_scattering_strength) { subsurface_scattering_strength = p_subsurface_scattering_strength; VS::get_singleton()->material_set_param(_get_material(), shader_names->subsurface_scattering_strength, subsurface_scattering_strength); } -float FixedSpatialMaterial::get_subsurface_scattering_strength() const { +float SpatialMaterial::get_subsurface_scattering_strength() const { return subsurface_scattering_strength; } -void FixedSpatialMaterial::set_refraction(float p_refraction) { +void SpatialMaterial::set_refraction(float p_refraction) { refraction = p_refraction; VS::get_singleton()->material_set_param(_get_material(), shader_names->refraction, refraction); } -float FixedSpatialMaterial::get_refraction() const { +float SpatialMaterial::get_refraction() const { return refraction; } -void FixedSpatialMaterial::set_refraction_roughness(float p_refraction_roughness) { +void SpatialMaterial::set_refraction_roughness(float p_refraction_roughness) { refraction_roughness = p_refraction_roughness; VS::get_singleton()->material_set_param(_get_material(), shader_names->refraction_roughness, refraction_roughness); } -float FixedSpatialMaterial::get_refraction_roughness() const { +float SpatialMaterial::get_refraction_roughness() const { return refraction_roughness; } -void FixedSpatialMaterial::set_detail_uv(DetailUV p_detail_uv) { +void SpatialMaterial::set_detail_uv(DetailUV p_detail_uv) { if (detail_uv == p_detail_uv) return; @@ -575,12 +755,12 @@ void FixedSpatialMaterial::set_detail_uv(DetailUV p_detail_uv) { detail_uv = p_detail_uv; _queue_shader_change(); } -FixedSpatialMaterial::DetailUV FixedSpatialMaterial::get_detail_uv() const { +SpatialMaterial::DetailUV SpatialMaterial::get_detail_uv() const { return detail_uv; } -void FixedSpatialMaterial::set_blend_mode(BlendMode p_mode) { +void SpatialMaterial::set_blend_mode(BlendMode p_mode) { if (blend_mode == p_mode) return; @@ -588,22 +768,22 @@ void FixedSpatialMaterial::set_blend_mode(BlendMode p_mode) { blend_mode = p_mode; _queue_shader_change(); } -FixedSpatialMaterial::BlendMode FixedSpatialMaterial::get_blend_mode() const { +SpatialMaterial::BlendMode SpatialMaterial::get_blend_mode() const { return blend_mode; } -void FixedSpatialMaterial::set_detail_blend_mode(BlendMode p_mode) { +void SpatialMaterial::set_detail_blend_mode(BlendMode p_mode) { detail_blend_mode = p_mode; _queue_shader_change(); } -FixedSpatialMaterial::BlendMode FixedSpatialMaterial::get_detail_blend_mode() const { +SpatialMaterial::BlendMode SpatialMaterial::get_detail_blend_mode() const { return detail_blend_mode; } -void FixedSpatialMaterial::set_depth_draw_mode(DepthDrawMode p_mode) { +void SpatialMaterial::set_depth_draw_mode(DepthDrawMode p_mode) { if (depth_draw_mode == p_mode) return; @@ -611,12 +791,12 @@ void FixedSpatialMaterial::set_depth_draw_mode(DepthDrawMode p_mode) { depth_draw_mode = p_mode; _queue_shader_change(); } -FixedSpatialMaterial::DepthDrawMode FixedSpatialMaterial::get_depth_draw_mode() const { +SpatialMaterial::DepthDrawMode SpatialMaterial::get_depth_draw_mode() const { return depth_draw_mode; } -void FixedSpatialMaterial::set_cull_mode(CullMode p_mode) { +void SpatialMaterial::set_cull_mode(CullMode p_mode) { if (cull_mode == p_mode) return; @@ -624,12 +804,12 @@ void FixedSpatialMaterial::set_cull_mode(CullMode p_mode) { cull_mode = p_mode; _queue_shader_change(); } -FixedSpatialMaterial::CullMode FixedSpatialMaterial::get_cull_mode() const { +SpatialMaterial::CullMode SpatialMaterial::get_cull_mode() const { return cull_mode; } -void FixedSpatialMaterial::set_diffuse_mode(DiffuseMode p_mode) { +void SpatialMaterial::set_diffuse_mode(DiffuseMode p_mode) { if (diffuse_mode == p_mode) return; @@ -637,12 +817,12 @@ void FixedSpatialMaterial::set_diffuse_mode(DiffuseMode p_mode) { diffuse_mode = p_mode; _queue_shader_change(); } -FixedSpatialMaterial::DiffuseMode FixedSpatialMaterial::get_diffuse_mode() const { +SpatialMaterial::DiffuseMode SpatialMaterial::get_diffuse_mode() const { return diffuse_mode; } -void FixedSpatialMaterial::set_flag(Flags p_flag, bool p_enabled) { +void SpatialMaterial::set_flag(Flags p_flag, bool p_enabled) { ERR_FAIL_INDEX(p_flag, FLAG_MAX); @@ -653,13 +833,13 @@ void FixedSpatialMaterial::set_flag(Flags p_flag, bool p_enabled) { _queue_shader_change(); } -bool FixedSpatialMaterial::get_flag(Flags p_flag) const { +bool SpatialMaterial::get_flag(Flags p_flag) const { ERR_FAIL_INDEX_V(p_flag, FLAG_MAX, false); return flags[p_flag]; } -void FixedSpatialMaterial::set_feature(Feature p_feature, bool p_enabled) { +void SpatialMaterial::set_feature(Feature p_feature, bool p_enabled) { ERR_FAIL_INDEX(p_feature, FEATURE_MAX); if (features[p_feature] == p_enabled) @@ -670,13 +850,13 @@ void FixedSpatialMaterial::set_feature(Feature p_feature, bool p_enabled) { _queue_shader_change(); } -bool FixedSpatialMaterial::get_feature(Feature p_feature) const { +bool SpatialMaterial::get_feature(Feature p_feature) const { ERR_FAIL_INDEX_V(p_feature, FEATURE_MAX, false); return features[p_feature]; } -void FixedSpatialMaterial::set_texture(TextureParam p_param, const Ref<Texture> &p_texture) { +void SpatialMaterial::set_texture(TextureParam p_param, const Ref<Texture> &p_texture) { ERR_FAIL_INDEX(p_param, TEXTURE_MAX); textures[p_param] = p_texture; @@ -684,19 +864,19 @@ void FixedSpatialMaterial::set_texture(TextureParam p_param, const Ref<Texture> VS::get_singleton()->material_set_param(_get_material(), shader_names->texture_names[p_param], rid); } -Ref<Texture> FixedSpatialMaterial::get_texture(TextureParam p_param) const { +Ref<Texture> SpatialMaterial::get_texture(TextureParam p_param) const { ERR_FAIL_INDEX_V(p_param, TEXTURE_MAX, Ref<Texture>()); return textures[p_param]; } -void FixedSpatialMaterial::_validate_feature(const String &text, Feature feature, PropertyInfo &property) const { +void SpatialMaterial::_validate_feature(const String &text, Feature feature, PropertyInfo &property) const { if (property.name.begins_with(text) && property.name != text + "_enabled" && !features[feature]) { property.usage = 0; } } -void FixedSpatialMaterial::_validate_property(PropertyInfo &property) const { +void SpatialMaterial::_validate_property(PropertyInfo &property) const { _validate_feature("normal", FEATURE_NORMAL_MAPPING, property); _validate_feature("emission", FEATURE_EMISSION, property); _validate_feature("rim", FEATURE_RIM, property); @@ -714,187 +894,253 @@ void FixedSpatialMaterial::_validate_property(PropertyInfo &property) const { if (property.name == "specular/metalness" && specular_mode == SPECULAR_MODE_SPECULAR) { property.usage = 0; } + + if (property.name.begins_with("particles_anim_") && billboard_mode != BILLBOARD_PARTICLES) { + property.usage = 0; + } } -void FixedSpatialMaterial::set_line_width(float p_line_width) { +void SpatialMaterial::set_line_width(float p_line_width) { line_width = p_line_width; VS::get_singleton()->material_set_line_width(_get_material(), line_width); } -float FixedSpatialMaterial::get_line_width() const { +float SpatialMaterial::get_line_width() const { return line_width; } -void FixedSpatialMaterial::set_point_size(float p_point_size) { +void SpatialMaterial::set_point_size(float p_point_size) { point_size = p_point_size; VS::get_singleton()->material_set_param(_get_material(), shader_names->point_size, p_point_size); } -float FixedSpatialMaterial::get_point_size() const { +float SpatialMaterial::get_point_size() const { return point_size; } -void FixedSpatialMaterial::set_uv1_scale(const Vector2 &p_scale) { +void SpatialMaterial::set_uv1_scale(const Vector2 &p_scale) { uv1_scale = p_scale; VS::get_singleton()->material_set_param(_get_material(), shader_names->uv1_scale, p_scale); } -Vector2 FixedSpatialMaterial::get_uv1_scale() const { +Vector2 SpatialMaterial::get_uv1_scale() const { return uv1_scale; } -void FixedSpatialMaterial::set_uv1_offset(const Vector2 &p_offset) { +void SpatialMaterial::set_uv1_offset(const Vector2 &p_offset) { uv1_offset = p_offset; VS::get_singleton()->material_set_param(_get_material(), shader_names->uv1_offset, p_offset); } -Vector2 FixedSpatialMaterial::get_uv1_offset() const { +Vector2 SpatialMaterial::get_uv1_offset() const { return uv1_offset; } -void FixedSpatialMaterial::set_uv2_scale(const Vector2 &p_scale) { +void SpatialMaterial::set_uv2_scale(const Vector2 &p_scale) { uv2_scale = p_scale; VS::get_singleton()->material_set_param(_get_material(), shader_names->uv2_scale, p_scale); } -Vector2 FixedSpatialMaterial::get_uv2_scale() const { +Vector2 SpatialMaterial::get_uv2_scale() const { return uv2_scale; } -void FixedSpatialMaterial::set_uv2_offset(const Vector2 &p_offset) { +void SpatialMaterial::set_uv2_offset(const Vector2 &p_offset) { uv2_offset = p_offset; VS::get_singleton()->material_set_param(_get_material(), shader_names->uv2_offset, p_offset); } -Vector2 FixedSpatialMaterial::get_uv2_offset() const { +Vector2 SpatialMaterial::get_uv2_offset() const { return uv2_offset; } -void FixedSpatialMaterial::_bind_methods() { +void SpatialMaterial::set_billboard_mode(BillboardMode p_mode) { + + billboard_mode = p_mode; + _queue_shader_change(); + _change_notify(); +} + +SpatialMaterial::BillboardMode SpatialMaterial::get_billboard_mode() const { + + return billboard_mode; +} + +void SpatialMaterial::set_particles_anim_h_frames(int p_frames) { + + particles_anim_h_frames = p_frames; + VS::get_singleton()->material_set_param(_get_material(), shader_names->particle_h_frames, p_frames); +} + +int SpatialMaterial::get_particles_anim_h_frames() const { + + return particles_anim_h_frames; +} +void SpatialMaterial::set_particles_anim_v_frames(int p_frames) { + + particles_anim_v_frames = p_frames; + VS::get_singleton()->material_set_param(_get_material(), shader_names->particle_v_frames, p_frames); +} + +int SpatialMaterial::get_particles_anim_v_frames() const { - ClassDB::bind_method(D_METHOD("set_albedo", "albedo"), &FixedSpatialMaterial::set_albedo); - ClassDB::bind_method(D_METHOD("get_albedo"), &FixedSpatialMaterial::get_albedo); + return particles_anim_v_frames; +} - ClassDB::bind_method(D_METHOD("set_specular_mode", "specular_mode"), &FixedSpatialMaterial::set_specular_mode); - ClassDB::bind_method(D_METHOD("get_specular_mode"), &FixedSpatialMaterial::get_specular_mode); +void SpatialMaterial::set_particles_anim_loop(int p_frames) { - ClassDB::bind_method(D_METHOD("set_specular", "specular"), &FixedSpatialMaterial::set_specular); - ClassDB::bind_method(D_METHOD("get_specular"), &FixedSpatialMaterial::get_specular); + particles_anim_loop = p_frames; + VS::get_singleton()->material_set_param(_get_material(), shader_names->particles_anim_loop, p_frames); +} - ClassDB::bind_method(D_METHOD("set_metalness", "metalness"), &FixedSpatialMaterial::set_metalness); - ClassDB::bind_method(D_METHOD("get_metalness"), &FixedSpatialMaterial::get_metalness); +int SpatialMaterial::get_particles_anim_loop() const { - ClassDB::bind_method(D_METHOD("set_roughness", "roughness"), &FixedSpatialMaterial::set_roughness); - ClassDB::bind_method(D_METHOD("get_roughness"), &FixedSpatialMaterial::get_roughness); + return particles_anim_loop; +} - ClassDB::bind_method(D_METHOD("set_emission", "emission"), &FixedSpatialMaterial::set_emission); - ClassDB::bind_method(D_METHOD("get_emission"), &FixedSpatialMaterial::get_emission); +void SpatialMaterial::_bind_methods() { - ClassDB::bind_method(D_METHOD("set_emission_energy", "emission_energy"), &FixedSpatialMaterial::set_emission_energy); - ClassDB::bind_method(D_METHOD("get_emission_energy"), &FixedSpatialMaterial::get_emission_energy); + ClassDB::bind_method(D_METHOD("set_albedo", "albedo"), &SpatialMaterial::set_albedo); + ClassDB::bind_method(D_METHOD("get_albedo"), &SpatialMaterial::get_albedo); - ClassDB::bind_method(D_METHOD("set_normal_scale", "normal_scale"), &FixedSpatialMaterial::set_normal_scale); - ClassDB::bind_method(D_METHOD("get_normal_scale"), &FixedSpatialMaterial::get_normal_scale); + ClassDB::bind_method(D_METHOD("set_specular_mode", "specular_mode"), &SpatialMaterial::set_specular_mode); + ClassDB::bind_method(D_METHOD("get_specular_mode"), &SpatialMaterial::get_specular_mode); - ClassDB::bind_method(D_METHOD("set_rim", "rim"), &FixedSpatialMaterial::set_rim); - ClassDB::bind_method(D_METHOD("get_rim"), &FixedSpatialMaterial::get_rim); + ClassDB::bind_method(D_METHOD("set_specular", "specular"), &SpatialMaterial::set_specular); + ClassDB::bind_method(D_METHOD("get_specular"), &SpatialMaterial::get_specular); - ClassDB::bind_method(D_METHOD("set_rim_tint", "rim_tint"), &FixedSpatialMaterial::set_rim_tint); - ClassDB::bind_method(D_METHOD("get_rim_tint"), &FixedSpatialMaterial::get_rim_tint); + ClassDB::bind_method(D_METHOD("set_metalness", "metalness"), &SpatialMaterial::set_metalness); + ClassDB::bind_method(D_METHOD("get_metalness"), &SpatialMaterial::get_metalness); - ClassDB::bind_method(D_METHOD("set_clearcoat", "clearcoat"), &FixedSpatialMaterial::set_clearcoat); - ClassDB::bind_method(D_METHOD("get_clearcoat"), &FixedSpatialMaterial::get_clearcoat); + ClassDB::bind_method(D_METHOD("set_roughness", "roughness"), &SpatialMaterial::set_roughness); + ClassDB::bind_method(D_METHOD("get_roughness"), &SpatialMaterial::get_roughness); - ClassDB::bind_method(D_METHOD("set_clearcoat_gloss", "clearcoat_gloss"), &FixedSpatialMaterial::set_clearcoat_gloss); - ClassDB::bind_method(D_METHOD("get_clearcoat_gloss"), &FixedSpatialMaterial::get_clearcoat_gloss); + ClassDB::bind_method(D_METHOD("set_emission", "emission"), &SpatialMaterial::set_emission); + ClassDB::bind_method(D_METHOD("get_emission"), &SpatialMaterial::get_emission); - ClassDB::bind_method(D_METHOD("set_anisotropy", "anisotropy"), &FixedSpatialMaterial::set_anisotropy); - ClassDB::bind_method(D_METHOD("get_anisotropy"), &FixedSpatialMaterial::get_anisotropy); + ClassDB::bind_method(D_METHOD("set_emission_energy", "emission_energy"), &SpatialMaterial::set_emission_energy); + ClassDB::bind_method(D_METHOD("get_emission_energy"), &SpatialMaterial::get_emission_energy); - ClassDB::bind_method(D_METHOD("set_height_scale", "height_scale"), &FixedSpatialMaterial::set_height_scale); - ClassDB::bind_method(D_METHOD("get_height_scale"), &FixedSpatialMaterial::get_height_scale); + ClassDB::bind_method(D_METHOD("set_normal_scale", "normal_scale"), &SpatialMaterial::set_normal_scale); + ClassDB::bind_method(D_METHOD("get_normal_scale"), &SpatialMaterial::get_normal_scale); - ClassDB::bind_method(D_METHOD("set_subsurface_scattering_strength", "strength"), &FixedSpatialMaterial::set_subsurface_scattering_strength); - ClassDB::bind_method(D_METHOD("get_subsurface_scattering_strength"), &FixedSpatialMaterial::get_subsurface_scattering_strength); + ClassDB::bind_method(D_METHOD("set_rim", "rim"), &SpatialMaterial::set_rim); + ClassDB::bind_method(D_METHOD("get_rim"), &SpatialMaterial::get_rim); - ClassDB::bind_method(D_METHOD("set_refraction", "refraction"), &FixedSpatialMaterial::set_refraction); - ClassDB::bind_method(D_METHOD("get_refraction"), &FixedSpatialMaterial::get_refraction); + ClassDB::bind_method(D_METHOD("set_rim_tint", "rim_tint"), &SpatialMaterial::set_rim_tint); + ClassDB::bind_method(D_METHOD("get_rim_tint"), &SpatialMaterial::get_rim_tint); - ClassDB::bind_method(D_METHOD("set_refraction_roughness", "refraction_roughness"), &FixedSpatialMaterial::set_refraction_roughness); - ClassDB::bind_method(D_METHOD("get_refraction_roughness"), &FixedSpatialMaterial::get_refraction_roughness); + ClassDB::bind_method(D_METHOD("set_clearcoat", "clearcoat"), &SpatialMaterial::set_clearcoat); + ClassDB::bind_method(D_METHOD("get_clearcoat"), &SpatialMaterial::get_clearcoat); - ClassDB::bind_method(D_METHOD("set_line_width", "line_width"), &FixedSpatialMaterial::set_line_width); - ClassDB::bind_method(D_METHOD("get_line_width"), &FixedSpatialMaterial::get_line_width); + ClassDB::bind_method(D_METHOD("set_clearcoat_gloss", "clearcoat_gloss"), &SpatialMaterial::set_clearcoat_gloss); + ClassDB::bind_method(D_METHOD("get_clearcoat_gloss"), &SpatialMaterial::get_clearcoat_gloss); - ClassDB::bind_method(D_METHOD("set_point_size", "point_size"), &FixedSpatialMaterial::set_point_size); - ClassDB::bind_method(D_METHOD("get_point_size"), &FixedSpatialMaterial::get_point_size); + ClassDB::bind_method(D_METHOD("set_anisotropy", "anisotropy"), &SpatialMaterial::set_anisotropy); + ClassDB::bind_method(D_METHOD("get_anisotropy"), &SpatialMaterial::get_anisotropy); - ClassDB::bind_method(D_METHOD("set_detail_uv", "detail_uv"), &FixedSpatialMaterial::set_detail_uv); - ClassDB::bind_method(D_METHOD("get_detail_uv"), &FixedSpatialMaterial::get_detail_uv); + ClassDB::bind_method(D_METHOD("set_height_scale", "height_scale"), &SpatialMaterial::set_height_scale); + ClassDB::bind_method(D_METHOD("get_height_scale"), &SpatialMaterial::get_height_scale); - ClassDB::bind_method(D_METHOD("set_blend_mode", "blend_mode"), &FixedSpatialMaterial::set_blend_mode); - ClassDB::bind_method(D_METHOD("get_blend_mode"), &FixedSpatialMaterial::get_blend_mode); + ClassDB::bind_method(D_METHOD("set_subsurface_scattering_strength", "strength"), &SpatialMaterial::set_subsurface_scattering_strength); + ClassDB::bind_method(D_METHOD("get_subsurface_scattering_strength"), &SpatialMaterial::get_subsurface_scattering_strength); - ClassDB::bind_method(D_METHOD("set_depth_draw_mode", "depth_draw_mode"), &FixedSpatialMaterial::set_depth_draw_mode); - ClassDB::bind_method(D_METHOD("get_depth_draw_mode"), &FixedSpatialMaterial::get_depth_draw_mode); + ClassDB::bind_method(D_METHOD("set_refraction", "refraction"), &SpatialMaterial::set_refraction); + ClassDB::bind_method(D_METHOD("get_refraction"), &SpatialMaterial::get_refraction); - ClassDB::bind_method(D_METHOD("set_cull_mode", "cull_mode"), &FixedSpatialMaterial::set_cull_mode); - ClassDB::bind_method(D_METHOD("get_cull_mode"), &FixedSpatialMaterial::get_cull_mode); + ClassDB::bind_method(D_METHOD("set_refraction_roughness", "refraction_roughness"), &SpatialMaterial::set_refraction_roughness); + ClassDB::bind_method(D_METHOD("get_refraction_roughness"), &SpatialMaterial::get_refraction_roughness); - ClassDB::bind_method(D_METHOD("set_diffuse_mode", "diffuse_mode"), &FixedSpatialMaterial::set_diffuse_mode); - ClassDB::bind_method(D_METHOD("get_diffuse_mode"), &FixedSpatialMaterial::get_diffuse_mode); + ClassDB::bind_method(D_METHOD("set_line_width", "line_width"), &SpatialMaterial::set_line_width); + ClassDB::bind_method(D_METHOD("get_line_width"), &SpatialMaterial::get_line_width); - ClassDB::bind_method(D_METHOD("set_flag", "flag", "enable"), &FixedSpatialMaterial::set_flag); - ClassDB::bind_method(D_METHOD("get_flag"), &FixedSpatialMaterial::get_flag); + ClassDB::bind_method(D_METHOD("set_point_size", "point_size"), &SpatialMaterial::set_point_size); + ClassDB::bind_method(D_METHOD("get_point_size"), &SpatialMaterial::get_point_size); - ClassDB::bind_method(D_METHOD("set_feature", "feature", "enable"), &FixedSpatialMaterial::set_feature); - ClassDB::bind_method(D_METHOD("get_feature", "feature"), &FixedSpatialMaterial::get_feature); + ClassDB::bind_method(D_METHOD("set_detail_uv", "detail_uv"), &SpatialMaterial::set_detail_uv); + ClassDB::bind_method(D_METHOD("get_detail_uv"), &SpatialMaterial::get_detail_uv); - ClassDB::bind_method(D_METHOD("set_texture", "param:Texture", "texture"), &FixedSpatialMaterial::set_texture); - ClassDB::bind_method(D_METHOD("get_texture:Texture", "param:Texture"), &FixedSpatialMaterial::get_texture); + ClassDB::bind_method(D_METHOD("set_blend_mode", "blend_mode"), &SpatialMaterial::set_blend_mode); + ClassDB::bind_method(D_METHOD("get_blend_mode"), &SpatialMaterial::get_blend_mode); - ClassDB::bind_method(D_METHOD("set_detail_blend_mode", "detail_blend_mode"), &FixedSpatialMaterial::set_detail_blend_mode); - ClassDB::bind_method(D_METHOD("get_detail_blend_mode"), &FixedSpatialMaterial::get_detail_blend_mode); + ClassDB::bind_method(D_METHOD("set_depth_draw_mode", "depth_draw_mode"), &SpatialMaterial::set_depth_draw_mode); + ClassDB::bind_method(D_METHOD("get_depth_draw_mode"), &SpatialMaterial::get_depth_draw_mode); - ClassDB::bind_method(D_METHOD("set_uv1_scale", "scale"), &FixedSpatialMaterial::set_uv1_scale); - ClassDB::bind_method(D_METHOD("get_uv1_scale"), &FixedSpatialMaterial::get_uv1_scale); + ClassDB::bind_method(D_METHOD("set_cull_mode", "cull_mode"), &SpatialMaterial::set_cull_mode); + ClassDB::bind_method(D_METHOD("get_cull_mode"), &SpatialMaterial::get_cull_mode); - ClassDB::bind_method(D_METHOD("set_uv1_offset", "offset"), &FixedSpatialMaterial::set_uv1_offset); - ClassDB::bind_method(D_METHOD("get_uv1_offset"), &FixedSpatialMaterial::get_uv1_offset); + ClassDB::bind_method(D_METHOD("set_diffuse_mode", "diffuse_mode"), &SpatialMaterial::set_diffuse_mode); + ClassDB::bind_method(D_METHOD("get_diffuse_mode"), &SpatialMaterial::get_diffuse_mode); - ClassDB::bind_method(D_METHOD("set_uv2_scale", "scale"), &FixedSpatialMaterial::set_uv2_scale); - ClassDB::bind_method(D_METHOD("get_uv2_scale"), &FixedSpatialMaterial::get_uv2_scale); + ClassDB::bind_method(D_METHOD("set_flag", "flag", "enable"), &SpatialMaterial::set_flag); + ClassDB::bind_method(D_METHOD("get_flag"), &SpatialMaterial::get_flag); - ClassDB::bind_method(D_METHOD("set_uv2_offset", "offset"), &FixedSpatialMaterial::set_uv2_offset); - ClassDB::bind_method(D_METHOD("get_uv2_offset"), &FixedSpatialMaterial::get_uv2_offset); + ClassDB::bind_method(D_METHOD("set_feature", "feature", "enable"), &SpatialMaterial::set_feature); + ClassDB::bind_method(D_METHOD("get_feature", "feature"), &SpatialMaterial::get_feature); + + ClassDB::bind_method(D_METHOD("set_texture", "param:Texture", "texture"), &SpatialMaterial::set_texture); + ClassDB::bind_method(D_METHOD("get_texture:Texture", "param:Texture"), &SpatialMaterial::get_texture); + + ClassDB::bind_method(D_METHOD("set_detail_blend_mode", "detail_blend_mode"), &SpatialMaterial::set_detail_blend_mode); + ClassDB::bind_method(D_METHOD("get_detail_blend_mode"), &SpatialMaterial::get_detail_blend_mode); + + ClassDB::bind_method(D_METHOD("set_uv1_scale", "scale"), &SpatialMaterial::set_uv1_scale); + ClassDB::bind_method(D_METHOD("get_uv1_scale"), &SpatialMaterial::get_uv1_scale); + + ClassDB::bind_method(D_METHOD("set_uv1_offset", "offset"), &SpatialMaterial::set_uv1_offset); + ClassDB::bind_method(D_METHOD("get_uv1_offset"), &SpatialMaterial::get_uv1_offset); + + ClassDB::bind_method(D_METHOD("set_uv2_scale", "scale"), &SpatialMaterial::set_uv2_scale); + ClassDB::bind_method(D_METHOD("get_uv2_scale"), &SpatialMaterial::get_uv2_scale); + + ClassDB::bind_method(D_METHOD("set_uv2_offset", "offset"), &SpatialMaterial::set_uv2_offset); + ClassDB::bind_method(D_METHOD("get_uv2_offset"), &SpatialMaterial::get_uv2_offset); + + ClassDB::bind_method(D_METHOD("set_billboard_mode", "mode"), &SpatialMaterial::set_billboard_mode); + ClassDB::bind_method(D_METHOD("get_billboard_mode"), &SpatialMaterial::get_billboard_mode); + + ClassDB::bind_method(D_METHOD("set_particles_anim_h_frames", "frames"), &SpatialMaterial::set_particles_anim_h_frames); + ClassDB::bind_method(D_METHOD("get_particles_anim_h_frames"), &SpatialMaterial::get_particles_anim_h_frames); + + ClassDB::bind_method(D_METHOD("set_particles_anim_v_frames", "frames"), &SpatialMaterial::set_particles_anim_v_frames); + ClassDB::bind_method(D_METHOD("get_particles_anim_v_frames"), &SpatialMaterial::get_particles_anim_v_frames); + + ClassDB::bind_method(D_METHOD("set_particles_anim_loop", "frames"), &SpatialMaterial::set_particles_anim_loop); + ClassDB::bind_method(D_METHOD("get_particles_anim_loop"), &SpatialMaterial::get_particles_anim_loop); ADD_GROUP("Flags", "flags_"); ADD_PROPERTYI(PropertyInfo(Variant::BOOL, "flags_transparent"), "set_feature", "get_feature", FEATURE_TRANSPARENT); ADD_PROPERTYI(PropertyInfo(Variant::BOOL, "flags_unshaded"), "set_flag", "get_flag", FLAG_UNSHADED); ADD_PROPERTYI(PropertyInfo(Variant::BOOL, "flags_on_top"), "set_flag", "get_flag", FLAG_ONTOP); ADD_PROPERTYI(PropertyInfo(Variant::BOOL, "flags_use_point_size"), "set_flag", "get_flag", FLAG_USE_POINT_SIZE); + ADD_PROPERTYI(PropertyInfo(Variant::BOOL, "flags_fixed_size"), "set_flag", "get_flag", FLAG_FIXED_SIZE); ADD_GROUP("Vertex Color", "vertex_color"); ADD_PROPERTYI(PropertyInfo(Variant::BOOL, "vertex_color_use_as_albedo"), "set_flag", "get_flag", FLAG_ALBEDO_FROM_VERTEX_COLOR); ADD_PROPERTYI(PropertyInfo(Variant::BOOL, "vertex_color_is_srgb"), "set_flag", "get_flag", FLAG_SRGB_VERTEX_COLOR); ADD_GROUP("Parameters", "params_"); - ADD_PROPERTY(PropertyInfo(Variant::INT, "params_diffuse_mode", PROPERTY_HINT_ENUM, "Labert,Lambert Wrap,Oren Nayar,Burley"), "set_diffuse_mode", "get_diffuse_mode"); + ADD_PROPERTY(PropertyInfo(Variant::INT, "params_diffuse_mode", PROPERTY_HINT_ENUM, "Lambert,Lambert Wrap,Oren Nayar,Burley"), "set_diffuse_mode", "get_diffuse_mode"); ADD_PROPERTY(PropertyInfo(Variant::INT, "params_blend_mode", PROPERTY_HINT_ENUM, "Mix,Add,Sub,Mul"), "set_blend_mode", "get_blend_mode"); ADD_PROPERTY(PropertyInfo(Variant::INT, "params_cull_mode", PROPERTY_HINT_ENUM, "Back,Front,Disabled"), "set_cull_mode", "get_cull_mode"); ADD_PROPERTY(PropertyInfo(Variant::INT, "params_depth_draw_mode", PROPERTY_HINT_ENUM, "Opaque Only,Always,Never,Opaque Pre-Pass"), "set_depth_draw_mode", "get_depth_draw_mode"); ADD_PROPERTY(PropertyInfo(Variant::REAL, "params_line_width", PROPERTY_HINT_RANGE, "0.1,128,0.1"), "set_line_width", "get_line_width"); ADD_PROPERTY(PropertyInfo(Variant::REAL, "params_point_size", PROPERTY_HINT_RANGE, "0.1,128,0.1"), "set_point_size", "get_point_size"); + ADD_PROPERTY(PropertyInfo(Variant::INT, "params_billboard_mode", PROPERTY_HINT_ENUM, "Disabled,Enabled,Y-Billboard,Particle Billboard"), "set_billboard_mode", "get_billboard_mode"); + ADD_GROUP("Particles Anim", "particles_anim_"); + ADD_PROPERTY(PropertyInfo(Variant::INT, "particles_anim_h_frames", PROPERTY_HINT_RANGE, "1,128,1"), "set_particles_anim_h_frames", "get_particles_anim_h_frames"); + ADD_PROPERTY(PropertyInfo(Variant::INT, "particles_anim_v_frames", PROPERTY_HINT_RANGE, "1,128,1"), "set_particles_anim_v_frames", "get_particles_anim_v_frames"); + ADD_PROPERTY(PropertyInfo(Variant::BOOL, "particles_anim_loop"), "set_particles_anim_loop", "get_particles_anim_loop"); ADD_GROUP("Albedo", "albedo_"); ADD_PROPERTY(PropertyInfo(Variant::COLOR, "albedo_color"), "set_albedo", "get_albedo"); @@ -1023,6 +1269,7 @@ void FixedSpatialMaterial::_bind_methods() { BIND_CONSTANT(FLAG_ALBEDO_FROM_VERTEX_COLOR); BIND_CONSTANT(FLAG_SRGB_VERTEX_COLOR) BIND_CONSTANT(FLAG_USE_POINT_SIZE) + BIND_CONSTANT(FLAG_FIXED_SIZE) BIND_CONSTANT(FLAG_MAX); BIND_CONSTANT(DIFFUSE_LAMBERT); @@ -1032,9 +1279,14 @@ void FixedSpatialMaterial::_bind_methods() { BIND_CONSTANT(SPECULAR_MODE_METALLIC); BIND_CONSTANT(SPECULAR_MODE_SPECULAR); + + BIND_CONSTANT(BILLBOARD_DISABLED); + BIND_CONSTANT(BILLBOARD_ENABLED); + BIND_CONSTANT(BILLBOARD_FIXED_Y); + BIND_CONSTANT(BILLBOARD_PARTICLES); } -FixedSpatialMaterial::FixedSpatialMaterial() +SpatialMaterial::SpatialMaterial() : element(this) { //initialize to right values @@ -1061,6 +1313,10 @@ FixedSpatialMaterial::FixedSpatialMaterial() set_uv1_scale(Vector2(1, 1)); set_uv2_offset(Vector2(0, 0)); set_uv2_scale(Vector2(1, 1)); + set_billboard_mode(BILLBOARD_DISABLED); + set_particles_anim_h_frames(1); + set_particles_anim_v_frames(1); + set_particles_anim_loop(false); detail_uv = DETAIL_UV_1; blend_mode = BLEND_MODE_MIX; @@ -1081,7 +1337,7 @@ FixedSpatialMaterial::FixedSpatialMaterial() _queue_shader_change(); } -FixedSpatialMaterial::~FixedSpatialMaterial() { +SpatialMaterial::~SpatialMaterial() { if (material_mutex) material_mutex->lock(); diff --git a/scene/resources/material.h b/scene/resources/material.h index a8288153c3..408815d756 100644 --- a/scene/resources/material.h +++ b/scene/resources/material.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -56,9 +57,34 @@ public: virtual ~Material(); }; -class FixedSpatialMaterial : public Material { +class ShaderMaterial : public Material { - GDCLASS(FixedSpatialMaterial, Material) + GDCLASS(ShaderMaterial, Material); + Ref<Shader> shader; + +protected: + bool _set(const StringName &p_name, const Variant &p_value); + bool _get(const StringName &p_name, Variant &r_ret) const; + void _get_property_list(List<PropertyInfo> *p_list) const; + + static void _bind_methods(); + + void get_argument_options(const StringName &p_function, int p_idx, List<String> *r_options) const; + +public: + void set_shader(const Ref<Shader> &p_shader); + Ref<Shader> get_shader() const; + + void set_shader_param(const StringName &p_param, const Variant &p_value); + Variant get_shader_param(const StringName &p_param) const; + + ShaderMaterial(); + ~ShaderMaterial(); +}; + +class SpatialMaterial : public Material { + + GDCLASS(SpatialMaterial, Material) public: enum TextureParam { @@ -128,6 +154,7 @@ public: FLAG_ALBEDO_FROM_VERTEX_COLOR, FLAG_SRGB_VERTEX_COLOR, FLAG_USE_POINT_SIZE, + FLAG_FIXED_SIZE, FLAG_MAX }; @@ -143,20 +170,28 @@ public: SPECULAR_MODE_SPECULAR, }; + enum BillboardMode { + BILLBOARD_DISABLED, + BILLBOARD_ENABLED, + BILLBOARD_FIXED_Y, + BILLBOARD_PARTICLES, + }; + private: union MaterialKey { struct { - uint32_t feature_mask : 14; + uint32_t feature_mask : 11; uint32_t detail_uv : 1; uint32_t blend_mode : 2; uint32_t depth_draw_mode : 2; uint32_t cull_mode : 2; - uint32_t flags : 5; + uint32_t flags : 6; uint32_t detail_blend_mode : 2; uint32_t diffuse_mode : 2; uint32_t invalid_key : 1; uint32_t specular_mode : 1; + uint32_t billboard_mode : 2; }; uint32_t key; @@ -196,6 +231,7 @@ private: mk.detail_blend_mode = detail_blend_mode; mk.diffuse_mode = diffuse_mode; mk.specular_mode = specular_mode; + mk.billboard_mode = billboard_mode; return mk; } @@ -222,14 +258,17 @@ private: StringName uv1_offset; StringName uv2_scale; StringName uv2_offset; + StringName particle_h_frames; + StringName particle_v_frames; + StringName particles_anim_loop; StringName texture_names[TEXTURE_MAX]; }; static Mutex *material_mutex; - static SelfList<FixedSpatialMaterial>::List dirty_materials; + static SelfList<SpatialMaterial>::List dirty_materials; static ShaderNames *shader_names; - SelfList<FixedSpatialMaterial> element; + SelfList<SpatialMaterial> element; void _update_shader(); _FORCE_INLINE_ void _queue_shader_change(); @@ -253,6 +292,9 @@ private: float refraction_roughness; float line_width; float point_size; + int particles_anim_h_frames; + int particles_anim_v_frames; + bool particles_anim_loop; Vector2 uv1_scale; Vector2 uv1_offset; @@ -269,6 +311,7 @@ private: bool flags[FLAG_MAX]; DiffuseMode diffuse_mode; SpecularMode specular_mode; + BillboardMode billboard_mode; bool features[FEATURE_MAX]; @@ -377,23 +420,35 @@ public: void set_uv2_offset(const Vector2 &p_offset); Vector2 get_uv2_offset() const; + void set_billboard_mode(BillboardMode p_mode); + BillboardMode get_billboard_mode() const; + + void set_particles_anim_h_frames(int p_frames); + int get_particles_anim_h_frames() const; + void set_particles_anim_v_frames(int p_frames); + int get_particles_anim_v_frames() const; + + void set_particles_anim_loop(int p_frames); + int get_particles_anim_loop() const; + static void init_shaders(); static void finish_shaders(); static void flush_changes(); - FixedSpatialMaterial(); - virtual ~FixedSpatialMaterial(); + SpatialMaterial(); + virtual ~SpatialMaterial(); }; -VARIANT_ENUM_CAST(FixedSpatialMaterial::TextureParam) -VARIANT_ENUM_CAST(FixedSpatialMaterial::DetailUV) -VARIANT_ENUM_CAST(FixedSpatialMaterial::Feature) -VARIANT_ENUM_CAST(FixedSpatialMaterial::BlendMode) -VARIANT_ENUM_CAST(FixedSpatialMaterial::DepthDrawMode) -VARIANT_ENUM_CAST(FixedSpatialMaterial::CullMode) -VARIANT_ENUM_CAST(FixedSpatialMaterial::Flags) -VARIANT_ENUM_CAST(FixedSpatialMaterial::DiffuseMode) -VARIANT_ENUM_CAST(FixedSpatialMaterial::SpecularMode) +VARIANT_ENUM_CAST(SpatialMaterial::TextureParam) +VARIANT_ENUM_CAST(SpatialMaterial::DetailUV) +VARIANT_ENUM_CAST(SpatialMaterial::Feature) +VARIANT_ENUM_CAST(SpatialMaterial::BlendMode) +VARIANT_ENUM_CAST(SpatialMaterial::DepthDrawMode) +VARIANT_ENUM_CAST(SpatialMaterial::CullMode) +VARIANT_ENUM_CAST(SpatialMaterial::Flags) +VARIANT_ENUM_CAST(SpatialMaterial::DiffuseMode) +VARIANT_ENUM_CAST(SpatialMaterial::SpecularMode) +VARIANT_ENUM_CAST(SpatialMaterial::BillboardMode) ////////////////////// diff --git a/scene/resources/mesh.cpp b/scene/resources/mesh.cpp index f951cf1620..ab3e143e60 100644 --- a/scene/resources/mesh.cpp +++ b/scene/resources/mesh.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -192,6 +193,9 @@ bool Mesh::_set(const StringName &p_name, const Variant &p_value) { bool Mesh::_get(const StringName &p_name, Variant &r_ret) const { + if (_is_generated()) + return false; + String sname = p_name; if (p_name == "blend_shape/names") { @@ -268,6 +272,9 @@ bool Mesh::_get(const StringName &p_name, Variant &r_ret) const { void Mesh::_get_property_list(List<PropertyInfo> *p_list) const { + if (_is_generated()) + return; + if (blend_shapes.size()) { p_list->push_back(PropertyInfo(Variant::POOL_STRING_ARRAY, "blend_shape/names", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR)); p_list->push_back(PropertyInfo(Variant::INT, "blend_shape/mode", PROPERTY_HINT_ENUM, "Normalized,Relative")); @@ -1025,3 +1032,71 @@ Mesh::~Mesh() { VisualServer::get_singleton()->free(mesh); } + +//////////////////////// + +void QuadMesh::_bind_methods() { + + ClassDB::bind_method(D_METHOD("set_material", "material:Material"), &QuadMesh::set_material); + ClassDB::bind_method(D_METHOD("get_material:Material"), &QuadMesh::get_material); + + ADD_PROPERTY(PropertyInfo(Variant::OBJECT, "material", PROPERTY_HINT_RESOURCE_TYPE, "Material"), "set_material", "get_material"); +} + +void QuadMesh::set_material(const Ref<Material> &p_material) { + + surface_set_material(0, p_material); +} + +Ref<Material> QuadMesh::get_material() const { + + return surface_get_material(0); +} + +QuadMesh::QuadMesh() { + + PoolVector<Vector3> faces; + PoolVector<Vector3> normals; + PoolVector<float> tangents; + PoolVector<Vector2> uvs; + + faces.resize(4); + normals.resize(4); + tangents.resize(4 * 4); + uvs.resize(4); + + for (int i = 0; i < 4; i++) { + + static const Vector3 quad_faces[4] = { + Vector3(-1, -1, 0), + Vector3(-1, 1, 0), + Vector3(1, 1, 0), + Vector3(1, -1, 0), + }; + + faces.set(i, quad_faces[i]); + normals.set(i, Vector3(0, 0, 1)); + tangents.set(i * 4 + 0, 1.0); + tangents.set(i * 4 + 1, 0.0); + tangents.set(i * 4 + 2, 0.0); + tangents.set(i * 4 + 3, 1.0); + + static const Vector2 quad_uv[4] = { + Vector2(0, 1), + Vector2(0, 0), + Vector2(1, 0), + Vector2(1, 1), + }; + + uvs.set(i, quad_uv[i]); + } + + Array arr; + arr.resize(ARRAY_MAX); + arr[ARRAY_VERTEX] = faces; + arr[ARRAY_NORMAL] = normals; + arr[ARRAY_TANGENT] = tangents; + arr[ARRAY_TEX_UV] = uvs; + + add_surface_from_arrays(PRIMITIVE_TRIANGLE_FAN, arr); +} diff --git a/scene/resources/mesh.h b/scene/resources/mesh.h index 8b1936ed06..e441b4924a 100644 --- a/scene/resources/mesh.h +++ b/scene/resources/mesh.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -128,6 +129,8 @@ private: void _recompute_aabb(); protected: + virtual bool _is_generated() const { return false; } + bool _set(const StringName &p_name, const Variant &p_value); bool _get(const StringName &p_name, Variant &r_ret) const; void _get_property_list(List<PropertyInfo> *p_list) const; @@ -189,6 +192,20 @@ public: ~Mesh(); }; +class QuadMesh : public Mesh { + + GDCLASS(QuadMesh, Mesh) + +protected: + virtual bool _is_generated() const { return true; } + static void _bind_methods(); + +public: + void set_material(const Ref<Material> &p_material); + Ref<Material> get_material() const; + QuadMesh(); +}; + VARIANT_ENUM_CAST(Mesh::ArrayType); VARIANT_ENUM_CAST(Mesh::PrimitiveType); VARIANT_ENUM_CAST(Mesh::BlendShapeMode); diff --git a/scene/resources/mesh_data_tool.cpp b/scene/resources/mesh_data_tool.cpp index fcc1f80d25..b6b47bf443 100644 --- a/scene/resources/mesh_data_tool.cpp +++ b/scene/resources/mesh_data_tool.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/mesh_data_tool.h b/scene/resources/mesh_data_tool.h index 14318a9f82..f6797d3e5e 100644 --- a/scene/resources/mesh_data_tool.h +++ b/scene/resources/mesh_data_tool.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/mesh_library.cpp b/scene/resources/mesh_library.cpp index 92ca921f25..22e5659e72 100644 --- a/scene/resources/mesh_library.cpp +++ b/scene/resources/mesh_library.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/mesh_library.h b/scene/resources/mesh_library.h index 5f4a695c56..a381f54a19 100644 --- a/scene/resources/mesh_library.h +++ b/scene/resources/mesh_library.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/multimesh.cpp b/scene/resources/multimesh.cpp index 6202109cd1..d32f221fd9 100644 --- a/scene/resources/multimesh.cpp +++ b/scene/resources/multimesh.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/multimesh.h b/scene/resources/multimesh.h index 1ecf76142a..4a00685b9f 100644 --- a/scene/resources/multimesh.h +++ b/scene/resources/multimesh.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/packed_scene.cpp b/scene/resources/packed_scene.cpp index 2bb9eda198..7738157330 100644 --- a/scene/resources/packed_scene.cpp +++ b/scene/resources/packed_scene.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/packed_scene.h b/scene/resources/packed_scene.h index fe451884f5..2f18f5c263 100644 --- a/scene/resources/packed_scene.h +++ b/scene/resources/packed_scene.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/plane_shape.cpp b/scene/resources/plane_shape.cpp index e3535b1a63..d3ad454afc 100644 --- a/scene/resources/plane_shape.cpp +++ b/scene/resources/plane_shape.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/plane_shape.h b/scene/resources/plane_shape.h index 899aad7e01..2ed297a97e 100644 --- a/scene/resources/plane_shape.h +++ b/scene/resources/plane_shape.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/polygon_path_finder.cpp b/scene/resources/polygon_path_finder.cpp index 44ef828d02..472031366f 100644 --- a/scene/resources/polygon_path_finder.cpp +++ b/scene/resources/polygon_path_finder.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/polygon_path_finder.h b/scene/resources/polygon_path_finder.h index cd2fea87d4..2d2fb1678e 100644 --- a/scene/resources/polygon_path_finder.h +++ b/scene/resources/polygon_path_finder.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/ray_shape.cpp b/scene/resources/ray_shape.cpp index 8187b8b3f1..3abb2a4fa1 100644 --- a/scene/resources/ray_shape.cpp +++ b/scene/resources/ray_shape.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/ray_shape.h b/scene/resources/ray_shape.h index f8dbf89e04..5a17e9414e 100644 --- a/scene/resources/ray_shape.h +++ b/scene/resources/ray_shape.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/rectangle_shape_2d.cpp b/scene/resources/rectangle_shape_2d.cpp index 06b5ac0316..bd9ec8cbc4 100644 --- a/scene/resources/rectangle_shape_2d.cpp +++ b/scene/resources/rectangle_shape_2d.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/rectangle_shape_2d.h b/scene/resources/rectangle_shape_2d.h index 8de2f7580e..23db58ba07 100644 --- a/scene/resources/rectangle_shape_2d.h +++ b/scene/resources/rectangle_shape_2d.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/room.cpp b/scene/resources/room.cpp index 9ec8914e2f..c89b7c72c7 100644 --- a/scene/resources/room.cpp +++ b/scene/resources/room.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/room.h b/scene/resources/room.h index c7db4b13d9..1bcdec5eb0 100644 --- a/scene/resources/room.h +++ b/scene/resources/room.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/scene_format_text.cpp b/scene/resources/scene_format_text.cpp index 7162c9fc18..f62fa93e04 100644 --- a/scene/resources/scene_format_text.cpp +++ b/scene/resources/scene_format_text.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/scene_format_text.h b/scene/resources/scene_format_text.h index 99e7de6232..a7e78d62fe 100644 --- a/scene/resources/scene_format_text.h +++ b/scene/resources/scene_format_text.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/segment_shape_2d.cpp b/scene/resources/segment_shape_2d.cpp index 7a1114f895..145374ff05 100644 --- a/scene/resources/segment_shape_2d.cpp +++ b/scene/resources/segment_shape_2d.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/segment_shape_2d.h b/scene/resources/segment_shape_2d.h index e58ce6be60..22fc1ab6e3 100644 --- a/scene/resources/segment_shape_2d.h +++ b/scene/resources/segment_shape_2d.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/shader.cpp b/scene/resources/shader.cpp index fd058a4a6f..fafe68188b 100644 --- a/scene/resources/shader.cpp +++ b/scene/resources/shader.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -29,6 +30,7 @@ #include "shader.h" #include "os/file_access.h" #include "scene/scene_string_names.h" +#include "servers/visual/shader_language.h" #include "servers/visual_server.h" #include "texture.h" @@ -39,6 +41,18 @@ Shader::Mode Shader::get_mode() const { void Shader::set_code(const String &p_code) { + String type = ShaderLanguage::get_shader_type(p_code); + + print_line("mode: " + type); + + if (type == "canvas_item") { + mode = MODE_CANVAS_ITEM; + } else if (type == "particles") { + mode = MODE_PARTICLES; + } else { + mode = MODE_SPATIAL; + } + VisualServer::get_singleton()->shader_set_code(shader, p_code); params_cache_dirty = true; emit_signal(SceneStringNames::get_singleton()->changed); @@ -128,10 +142,10 @@ void Shader::_bind_methods() { BIND_CONSTANT(MODE_PARTICLES); } -Shader::Shader(Mode p_mode) { +Shader::Shader() { - mode = p_mode; - shader = VisualServer::get_singleton()->shader_create(VS::ShaderMode(p_mode)); + mode = MODE_SPATIAL; + shader = VisualServer::get_singleton()->shader_create(); params_cache_dirty = true; } diff --git a/scene/resources/shader.h b/scene/resources/shader.h index bc98fbf737..0e8e48d82e 100644 --- a/scene/resources/shader.h +++ b/scene/resources/shader.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -88,37 +89,10 @@ public: virtual RID get_rid() const; - Shader(Mode p_mode); + Shader(); ~Shader(); }; VARIANT_ENUM_CAST(Shader::Mode); -class SpatialShader : public Shader { - - GDCLASS(SpatialShader, Shader); - -public: - SpatialShader() - : Shader(MODE_SPATIAL){}; -}; - -class CanvasItemShader : public Shader { - - GDCLASS(CanvasItemShader, Shader); - -public: - CanvasItemShader() - : Shader(MODE_CANVAS_ITEM){}; -}; - -class ParticlesShader : public Shader { - - GDCLASS(ParticlesShader, Shader); - -public: - ParticlesShader() - : Shader(MODE_PARTICLES){}; -}; - #endif // SHADER_H diff --git a/scene/resources/shader_graph.cpp b/scene/resources/shader_graph.cpp index 28b8490cb4..61dc9185a0 100644 --- a/scene/resources/shader_graph.cpp +++ b/scene/resources/shader_graph.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/shader_graph.h b/scene/resources/shader_graph.h index 190d76fce6..b9ec294eb8 100644 --- a/scene/resources/shader_graph.h +++ b/scene/resources/shader_graph.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/shape.cpp b/scene/resources/shape.cpp index c666ff0cd3..b449932b17 100644 --- a/scene/resources/shape.cpp +++ b/scene/resources/shape.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/shape.h b/scene/resources/shape.h index 8a8ecf1228..01b8db650e 100644 --- a/scene/resources/shape.h +++ b/scene/resources/shape.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/shape_2d.cpp b/scene/resources/shape_2d.cpp index 497110c6f9..f1a00336fa 100644 --- a/scene/resources/shape_2d.cpp +++ b/scene/resources/shape_2d.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/shape_2d.h b/scene/resources/shape_2d.h index afae74c385..a752b8dbe2 100644 --- a/scene/resources/shape_2d.h +++ b/scene/resources/shape_2d.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/shape_line_2d.cpp b/scene/resources/shape_line_2d.cpp index 777dbead52..89c1cea252 100644 --- a/scene/resources/shape_line_2d.cpp +++ b/scene/resources/shape_line_2d.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/shape_line_2d.h b/scene/resources/shape_line_2d.h index cd62504d81..3e59bbc687 100644 --- a/scene/resources/shape_line_2d.h +++ b/scene/resources/shape_line_2d.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/sky_box.cpp b/scene/resources/sky_box.cpp index cb3b1cf60d..241675569f 100644 --- a/scene/resources/sky_box.cpp +++ b/scene/resources/sky_box.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/sky_box.h b/scene/resources/sky_box.h index 23ba077df3..f748ac1e2d 100644 --- a/scene/resources/sky_box.h +++ b/scene/resources/sky_box.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/space_2d.cpp b/scene/resources/space_2d.cpp index d0a18b98bd..2a618bb868 100644 --- a/scene/resources/space_2d.cpp +++ b/scene/resources/space_2d.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/space_2d.h b/scene/resources/space_2d.h index b6c2607b13..3e08612d99 100644 --- a/scene/resources/space_2d.h +++ b/scene/resources/space_2d.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/sphere_shape.cpp b/scene/resources/sphere_shape.cpp index c242e748a4..960554562f 100644 --- a/scene/resources/sphere_shape.cpp +++ b/scene/resources/sphere_shape.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/sphere_shape.h b/scene/resources/sphere_shape.h index 576c59ee7d..a3b5d2424b 100644 --- a/scene/resources/sphere_shape.h +++ b/scene/resources/sphere_shape.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/style_box.cpp b/scene/resources/style_box.cpp index a3bb52d0f1..35158806ca 100644 --- a/scene/resources/style_box.cpp +++ b/scene/resources/style_box.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/style_box.h b/scene/resources/style_box.h index f0107ed71f..e14a536879 100644 --- a/scene/resources/style_box.h +++ b/scene/resources/style_box.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/surface_tool.cpp b/scene/resources/surface_tool.cpp index 7564735cf2..4c36d79a7a 100644 --- a/scene/resources/surface_tool.cpp +++ b/scene/resources/surface_tool.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/surface_tool.h b/scene/resources/surface_tool.h index 542c21e7b8..6e52db218d 100644 --- a/scene/resources/surface_tool.h +++ b/scene/resources/surface_tool.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/texture.cpp b/scene/resources/texture.cpp index d08fc2634e..0889306bad 100644 --- a/scene/resources/texture.cpp +++ b/scene/resources/texture.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -1367,3 +1368,471 @@ CubeMap::~CubeMap() { BIND_CONSTANT( CUBEMAP_FRONT ); BIND_CONSTANT( CUBEMAP_BACK ); */ +/////////////////////////// + +void CurveTexture::_bind_methods() { + + ClassDB::bind_method(D_METHOD("set_max", "max"), &CurveTexture::set_max); + ClassDB::bind_method(D_METHOD("get_max"), &CurveTexture::get_max); + + ClassDB::bind_method(D_METHOD("set_min", "min"), &CurveTexture::set_min); + ClassDB::bind_method(D_METHOD("get_min"), &CurveTexture::get_min); + + ClassDB::bind_method(D_METHOD("set_width", "width"), &CurveTexture::set_width); + + ClassDB::bind_method(D_METHOD("set_points", "points"), &CurveTexture::set_points); + ClassDB::bind_method(D_METHOD("get_points"), &CurveTexture::get_points); + + ADD_PROPERTY(PropertyInfo(Variant::REAL, "min", PROPERTY_HINT_RANGE, "-1024,1024"), "set_min", "get_min"); + ADD_PROPERTY(PropertyInfo(Variant::REAL, "max", PROPERTY_HINT_RANGE, "-1024,1024"), "set_max", "get_max"); + ADD_PROPERTY(PropertyInfo(Variant::INT, "width", PROPERTY_HINT_RANGE, "32,4096"), "set_width", "get_width"); + ADD_PROPERTY(PropertyInfo(Variant::POOL_VECTOR2_ARRAY, "points"), "set_points", "get_points"); +} +void CurveTexture::set_max(float p_max) { + + max = p_max; + emit_changed(); +} +float CurveTexture::get_max() const { + + return max; +} + +void CurveTexture::set_min(float p_min) { + + min = p_min; + emit_changed(); +} +float CurveTexture::get_min() const { + + return min; +} +void CurveTexture::set_width(int p_width) { + + ERR_FAIL_COND(p_width < 32 || p_width > 4096); + width = p_width; + if (points.size()) + set_points(points); +} +int CurveTexture::get_width() const { + + return width; +} + +static void _plot_curve(const Vector2 &p_a, const Vector2 &p_b, const Vector2 &p_c, const Vector2 &p_d, float *p_heights, bool *p_useds, int p_width, float p_min, float p_max) { + + float geometry[4][4]; + float tmp1[4][4]; + float tmp2[4][4]; + float deltas[4][4]; + double x, dx, dx2, dx3; + double y, dy, dy2, dy3; + double d, d2, d3; + int lastx; + int newx; + float lasty; + float newy; + int ntimes; + int i, j; + + int xmax = p_width; + + /* construct the geometry matrix from the segment */ + for (i = 0; i < 4; i++) { + geometry[i][2] = 0; + geometry[i][3] = 0; + } + + geometry[0][0] = (p_a[0] * xmax); + geometry[1][0] = (p_b[0] * xmax); + geometry[2][0] = (p_c[0] * xmax); + geometry[3][0] = (p_d[0] * xmax); + + geometry[0][1] = (p_a[1]); + geometry[1][1] = (p_b[1]); + geometry[2][1] = (p_c[1]); + geometry[3][1] = (p_d[1]); + + /* subdivide the curve ntimes (1000) times */ + ntimes = 4 * xmax; + /* ntimes can be adjusted to give a finer or coarser curve */ + d = 1.0 / ntimes; + d2 = d * d; + d3 = d * d * d; + + /* construct a temporary matrix for determining the forward differencing deltas */ + tmp2[0][0] = 0; + tmp2[0][1] = 0; + tmp2[0][2] = 0; + tmp2[0][3] = 1; + tmp2[1][0] = d3; + tmp2[1][1] = d2; + tmp2[1][2] = d; + tmp2[1][3] = 0; + tmp2[2][0] = 6 * d3; + tmp2[2][1] = 2 * d2; + tmp2[2][2] = 0; + tmp2[2][3] = 0; + tmp2[3][0] = 6 * d3; + tmp2[3][1] = 0; + tmp2[3][2] = 0; + tmp2[3][3] = 0; + + /* compose the basis and geometry matrices */ + + static const float CR_basis[4][4] = { + { -0.5, 1.5, -1.5, 0.5 }, + { 1.0, -2.5, 2.0, -0.5 }, + { -0.5, 0.0, 0.5, 0.0 }, + { 0.0, 1.0, 0.0, 0.0 }, + }; + + for (i = 0; i < 4; i++) { + for (j = 0; j < 4; j++) { + tmp1[i][j] = (CR_basis[i][0] * geometry[0][j] + + CR_basis[i][1] * geometry[1][j] + + CR_basis[i][2] * geometry[2][j] + + CR_basis[i][3] * geometry[3][j]); + } + } + /* compose the above results to get the deltas matrix */ + + for (i = 0; i < 4; i++) { + for (j = 0; j < 4; j++) { + deltas[i][j] = (tmp2[i][0] * tmp1[0][j] + + tmp2[i][1] * tmp1[1][j] + + tmp2[i][2] * tmp1[2][j] + + tmp2[i][3] * tmp1[3][j]); + } + } + + /* extract the x deltas */ + x = deltas[0][0]; + dx = deltas[1][0]; + dx2 = deltas[2][0]; + dx3 = deltas[3][0]; + + /* extract the y deltas */ + y = deltas[0][1]; + dy = deltas[1][1]; + dy2 = deltas[2][1]; + dy3 = deltas[3][1]; + + lastx = CLAMP(x, 0, xmax); + lasty = y; + + p_heights[lastx] = lasty; + p_useds[lastx] = true; + + /* loop over the curve */ + for (i = 0; i < ntimes; i++) { + /* increment the x values */ + x += dx; + dx += dx2; + dx2 += dx3; + + /* increment the y values */ + y += dy; + dy += dy2; + dy2 += dy3; + + newx = CLAMP((Math::round(x)), 0, xmax); + newy = CLAMP(y, p_min, p_max); + + /* if this point is different than the last one...then draw it */ + if ((lastx != newx) || (lasty != newy)) { + p_useds[newx] = true; + p_heights[newx] = newy; + } + + lastx = newx; + lasty = newy; + } +} + +void CurveTexture::set_points(const PoolVector<Vector2> &p_points) { + + points = p_points; + + PoolVector<uint8_t> data; + PoolVector<bool> used; + data.resize(width * sizeof(float)); + used.resize(width); + { + PoolVector<uint8_t>::Write wd8 = data.write(); + float *wd = (float *)wd8.ptr(); + PoolVector<bool>::Write wu = used.write(); + int pc = p_points.size(); + PoolVector<Vector2>::Read pr = p_points.read(); + + for (int i = 0; i < width; i++) { + wd[i] = 0.0; + wu[i] = false; + } + + Vector2 prev = Vector2(0, 0); + Vector2 prev2 = Vector2(0, 0); + + for (int i = -1; i < pc; i++) { + + Vector2 next; + Vector2 next2; + if (i + 1 >= pc) { + next = Vector2(1, 0); + } else { + next = Vector2(pr[i + 1].x, pr[i + 1].y); + } + + if (i + 2 >= pc) { + next2 = Vector2(1, 0); + } else { + next2 = Vector2(pr[i + 2].x, pr[i + 2].y); + } + + /*if (i==-1 && prev.offset==next.offset) { + prev=next; + continue; + }*/ + + _plot_curve(prev2, prev, next, next2, wd, wu.ptr(), width, min, max); + + prev2 = prev; + prev = next; + } + } + + Image image(width, 1, false, Image::FORMAT_RF, data); + + VS::get_singleton()->texture_allocate(texture, width, 1, Image::FORMAT_RF, VS::TEXTURE_FLAG_FILTER); + VS::get_singleton()->texture_set_data(texture, image); + + emit_changed(); +} + +PoolVector<Vector2> CurveTexture::get_points() const { + + return points; +} + +RID CurveTexture::get_rid() const { + + return texture; +} + +CurveTexture::CurveTexture() { + + max = 1; + min = 0; + width = 2048; + texture = VS::get_singleton()->texture_create(); +} +CurveTexture::~CurveTexture() { + VS::get_singleton()->free(texture); +} +////////////////// + +//setter and getter names for property serialization +#define COLOR_RAMP_GET_OFFSETS "get_offsets" +#define COLOR_RAMP_GET_COLORS "get_colors" +#define COLOR_RAMP_SET_OFFSETS "set_offsets" +#define COLOR_RAMP_SET_COLORS "set_colors" + +GradientTexture::GradientTexture() { + //Set initial color ramp transition from black to white + points.resize(2); + points[0].color = Color(0, 0, 0, 1); + points[0].offset = 0; + points[1].color = Color(1, 1, 1, 1); + points[1].offset = 1; + is_sorted = true; + update_pending = false; + width = 2048; + + texture = VS::get_singleton()->texture_create(); + _queue_update(); +} + +GradientTexture::~GradientTexture() { + VS::get_singleton()->free(texture); +} + +void GradientTexture::_bind_methods() { + + ClassDB::bind_method(D_METHOD("add_point", "offset", "color"), &GradientTexture::add_point); + ClassDB::bind_method(D_METHOD("remove_point", "offset", "color"), &GradientTexture::remove_point); + + ClassDB::bind_method(D_METHOD("set_offset", "point", "offset"), &GradientTexture::set_offset); + ClassDB::bind_method(D_METHOD("get_offset", "point"), &GradientTexture::get_offset); + + ClassDB::bind_method(D_METHOD("set_color", "point", "color"), &GradientTexture::set_color); + ClassDB::bind_method(D_METHOD("get_color", "point"), &GradientTexture::get_color); + + ClassDB::bind_method(D_METHOD("set_width", "width"), &GradientTexture::set_width); + + ClassDB::bind_method(D_METHOD("interpolate", "offset"), &GradientTexture::get_color_at_offset); + + ClassDB::bind_method(D_METHOD("get_point_count"), &GradientTexture::get_points_count); + + ClassDB::bind_method(D_METHOD("_update"), &GradientTexture::_update); + + ClassDB::bind_method(D_METHOD(COLOR_RAMP_SET_OFFSETS, "offsets"), &GradientTexture::set_offsets); + ClassDB::bind_method(D_METHOD(COLOR_RAMP_GET_OFFSETS), &GradientTexture::get_offsets); + + ClassDB::bind_method(D_METHOD(COLOR_RAMP_SET_COLORS, "colors"), &GradientTexture::set_colors); + ClassDB::bind_method(D_METHOD(COLOR_RAMP_GET_COLORS), &GradientTexture::get_colors); + + ADD_PROPERTY(PropertyInfo(Variant::INT, "width"), "set_width", "get_width"); + ADD_PROPERTY(PropertyInfo(Variant::REAL, "offsets"), COLOR_RAMP_SET_OFFSETS, COLOR_RAMP_GET_OFFSETS); + ADD_PROPERTY(PropertyInfo(Variant::REAL, "colors"), COLOR_RAMP_SET_COLORS, COLOR_RAMP_GET_COLORS); +} + +void GradientTexture::_queue_update() { + + if (update_pending) + return; + + call_deferred("_update"); +} + +void GradientTexture::_update() { + + update_pending = false; + + PoolVector<uint8_t> data; + data.resize(width * 4); + { + PoolVector<uint8_t>::Write wd8 = data.write(); + for (int i = 0; i < width; i++) { + float ofs = float(i) / (width - 1); + + Color color = get_color_at_offset(ofs); + wd8[i * 4 + 0] = uint8_t(CLAMP(color.r * 255.0, 0, 255)); + wd8[i * 4 + 1] = uint8_t(CLAMP(color.g * 255.0, 0, 255)); + wd8[i * 4 + 2] = uint8_t(CLAMP(color.b * 255.0, 0, 255)); + wd8[i * 4 + 3] = uint8_t(CLAMP(color.a * 255.0, 0, 255)); + } + } + + Image image(width, 1, false, Image::FORMAT_RGBA8, data); + + VS::get_singleton()->texture_allocate(texture, width, 1, Image::FORMAT_RGBA8, VS::TEXTURE_FLAG_FILTER); + VS::get_singleton()->texture_set_data(texture, image); + + emit_changed(); +} + +void GradientTexture::set_width(int p_width) { + + width = p_width; + _queue_update(); +} +int GradientTexture::get_width() const { + + return width; +} + +Vector<float> GradientTexture::get_offsets() const { + Vector<float> offsets; + offsets.resize(points.size()); + for (int i = 0; i < points.size(); i++) { + offsets[i] = points[i].offset; + } + return offsets; +} + +Vector<Color> GradientTexture::get_colors() const { + Vector<Color> colors; + colors.resize(points.size()); + for (int i = 0; i < points.size(); i++) { + colors[i] = points[i].color; + } + return colors; +} + +void GradientTexture::set_offsets(const Vector<float> &p_offsets) { + points.resize(p_offsets.size()); + for (int i = 0; i < points.size(); i++) { + points[i].offset = p_offsets[i]; + } + is_sorted = false; + emit_changed(); + _queue_update(); +} + +void GradientTexture::set_colors(const Vector<Color> &p_colors) { + if (points.size() < p_colors.size()) + is_sorted = false; + points.resize(p_colors.size()); + for (int i = 0; i < points.size(); i++) { + points[i].color = p_colors[i]; + } + emit_changed(); + _queue_update(); +} + +Vector<GradientTexture::Point> &GradientTexture::get_points() { + return points; +} + +void GradientTexture::add_point(float p_offset, const Color &p_color) { + + Point p; + p.offset = p_offset; + p.color = p_color; + is_sorted = false; + points.push_back(p); + + emit_changed(); + _queue_update(); +} + +void GradientTexture::remove_point(int p_index) { + + ERR_FAIL_INDEX(p_index, points.size()); + ERR_FAIL_COND(points.size() <= 2); + points.remove(p_index); + emit_changed(); + _queue_update(); +} + +void GradientTexture::set_points(Vector<GradientTexture::Point> &p_points) { + points = p_points; + is_sorted = false; + emit_changed(); + _queue_update(); +} + +void GradientTexture::set_offset(int pos, const float offset) { + if (points.size() <= pos) + points.resize(pos + 1); + points[pos].offset = offset; + is_sorted = false; + emit_changed(); + _queue_update(); +} + +float GradientTexture::get_offset(int pos) const { + if (points.size() > pos) + return points[pos].offset; + return 0; //TODO: Maybe throw some error instead? +} + +void GradientTexture::set_color(int pos, const Color &color) { + if (points.size() <= pos) { + points.resize(pos + 1); + is_sorted = false; + } + points[pos].color = color; + emit_changed(); + _queue_update(); +} + +Color GradientTexture::get_color(int pos) const { + if (points.size() > pos) + return points[pos].color; + return Color(0, 0, 0, 1); //TODO: Maybe throw some error instead? +} + +int GradientTexture::get_points_count() const { + return points.size(); +} diff --git a/scene/resources/texture.h b/scene/resources/texture.h index 0092fee836..a6ea163813 100644 --- a/scene/resources/texture.h +++ b/scene/resources/texture.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -394,6 +395,44 @@ VARIANT_ENUM_CAST(CubeMap::Flags); VARIANT_ENUM_CAST(CubeMap::Side); VARIANT_ENUM_CAST(CubeMap::Storage); +class CurveTexture : public Texture { + + GDCLASS(CurveTexture, Texture); + RES_BASE_EXTENSION("cvtex"); + +private: + RID texture; + PoolVector<Vector2> points; + float min, max; + int width; + +protected: + static void _bind_methods(); + +public: + void set_max(float p_max); + float get_max() const; + + void set_min(float p_min); + float get_min() const; + + void set_width(int p_width); + int get_width() const; + + void set_points(const PoolVector<Vector2> &p_points); + PoolVector<Vector2> get_points() const; + + virtual RID get_rid() const; + + virtual int get_height() const { return 1; } + virtual bool has_alpha() const { return false; } + + virtual void set_flags(uint32_t p_flags) {} + virtual uint32_t get_flags() const { return FLAG_FILTER; } + + CurveTexture(); + ~CurveTexture(); +}; /* enum CubeMapSide { @@ -408,4 +447,107 @@ VARIANT_ENUM_CAST(CubeMap::Storage); */ //VARIANT_ENUM_CAST( Texture::CubeMapSide ); +class GradientTexture : public Texture { + GDCLASS(GradientTexture, Texture); + +public: + struct Point { + + float offset; + Color color; + bool operator<(const Point &p_ponit) const { + return offset < p_ponit.offset; + } + }; + +private: + Vector<Point> points; + bool is_sorted; + bool update_pending; + RID texture; + int width; + + void _queue_update(); + void _update(); + +protected: + static void _bind_methods(); + +public: + void add_point(float p_offset, const Color &p_color); + void remove_point(int p_index); + + void set_points(Vector<Point> &points); + Vector<Point> &get_points(); + + void set_offset(int pos, const float offset); + float get_offset(int pos) const; + + void set_color(int pos, const Color &color); + Color get_color(int pos) const; + + void set_offsets(const Vector<float> &offsets); + Vector<float> get_offsets() const; + + void set_colors(const Vector<Color> &colors); + Vector<Color> get_colors() const; + + void set_width(int p_width); + int get_width() const; + + virtual RID get_rid() const { return texture; } + virtual int get_height() const { return 1; } + virtual bool has_alpha() const { return true; } + + virtual void set_flags(uint32_t p_flags) {} + virtual uint32_t get_flags() const { return FLAG_FILTER; } + + _FORCE_INLINE_ Color get_color_at_offset(float p_offset) { + + if (points.empty()) + return Color(0, 0, 0, 1); + + if (!is_sorted) { + points.sort(); + is_sorted = true; + } + + //binary search + int low = 0; + int high = points.size() - 1; + int middle; + + while (low <= high) { + middle = (low + high) / 2; + Point &point = points[middle]; + if (point.offset > p_offset) { + high = middle - 1; //search low end of array + } else if (point.offset < p_offset) { + low = middle + 1; //search high end of array + } else { + return point.color; + } + } + + //return interpolated value + if (points[middle].offset > p_offset) { + middle--; + } + int first = middle; + int second = middle + 1; + if (second >= points.size()) + return points[points.size() - 1].color; + if (first < 0) + return points[0].color; + Point &pointFirst = points[first]; + Point &pointSecond = points[second]; + return pointFirst.color.linear_interpolate(pointSecond.color, (p_offset - pointFirst.offset) / (pointSecond.offset - pointFirst.offset)); + } + + int get_points_count() const; + + GradientTexture(); + virtual ~GradientTexture(); +}; + #endif diff --git a/scene/resources/theme.cpp b/scene/resources/theme.cpp index c1ef3e8c1f..faf9f31b43 100644 --- a/scene/resources/theme.cpp +++ b/scene/resources/theme.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/theme.h b/scene/resources/theme.h index 4de6fd78ca..1a5cfcf4b2 100644 --- a/scene/resources/theme.h +++ b/scene/resources/theme.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/tile_set.cpp b/scene/resources/tile_set.cpp index 3e128379ae..76bb1daf94 100644 --- a/scene/resources/tile_set.cpp +++ b/scene/resources/tile_set.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -125,7 +126,7 @@ void TileSet::_get_property_list(List<PropertyInfo> *p_list) const { p_list->push_back(PropertyInfo(Variant::STRING, pre + "name")); p_list->push_back(PropertyInfo(Variant::OBJECT, pre + "texture", PROPERTY_HINT_RESOURCE_TYPE, "Texture")); p_list->push_back(PropertyInfo(Variant::VECTOR2, pre + "tex_offset")); - p_list->push_back(PropertyInfo(Variant::OBJECT, pre + "material", PROPERTY_HINT_RESOURCE_TYPE, "CanvasItemMaterial")); + p_list->push_back(PropertyInfo(Variant::OBJECT, pre + "material", PROPERTY_HINT_RESOURCE_TYPE, "ShaderMaterial")); p_list->push_back(PropertyInfo(Variant::COLOR, pre + "modulate")); p_list->push_back(PropertyInfo(Variant::RECT2, pre + "region")); p_list->push_back(PropertyInfo(Variant::VECTOR2, pre + "occluder_offset")); @@ -159,16 +160,16 @@ Ref<Texture> TileSet::tile_get_texture(int p_id) const { return tile_map[p_id].texture; } -void TileSet::tile_set_material(int p_id, const Ref<CanvasItemMaterial> &p_material) { +void TileSet::tile_set_material(int p_id, const Ref<ShaderMaterial> &p_material) { ERR_FAIL_COND(!tile_map.has(p_id)); tile_map[p_id].material = p_material; emit_changed(); } -Ref<CanvasItemMaterial> TileSet::tile_get_material(int p_id) const { +Ref<ShaderMaterial> TileSet::tile_get_material(int p_id) const { - ERR_FAIL_COND_V(!tile_map.has(p_id), Ref<CanvasItemMaterial>()); + ERR_FAIL_COND_V(!tile_map.has(p_id), Ref<ShaderMaterial>()); return tile_map[p_id].material; } @@ -403,8 +404,8 @@ void TileSet::_bind_methods() { ClassDB::bind_method(D_METHOD("tile_get_name", "id"), &TileSet::tile_get_name); ClassDB::bind_method(D_METHOD("tile_set_texture", "id", "texture:Texture"), &TileSet::tile_set_texture); ClassDB::bind_method(D_METHOD("tile_get_texture:Texture", "id"), &TileSet::tile_get_texture); - ClassDB::bind_method(D_METHOD("tile_set_material", "id", "material:CanvasItemMaterial"), &TileSet::tile_set_material); - ClassDB::bind_method(D_METHOD("tile_get_material:CanvasItemMaterial", "id"), &TileSet::tile_get_material); + ClassDB::bind_method(D_METHOD("tile_set_material", "id", "material:ShaderMaterial"), &TileSet::tile_set_material); + ClassDB::bind_method(D_METHOD("tile_get_material:ShaderMaterial", "id"), &TileSet::tile_get_material); ClassDB::bind_method(D_METHOD("tile_set_texture_offset", "id", "texture_offset"), &TileSet::tile_set_texture_offset); ClassDB::bind_method(D_METHOD("tile_get_texture_offset", "id"), &TileSet::tile_get_texture_offset); ClassDB::bind_method(D_METHOD("tile_set_shape_offset", "id", "shape_offset"), &TileSet::tile_set_shape_offset); diff --git a/scene/resources/tile_set.h b/scene/resources/tile_set.h index 53f68d00a5..448444d34a 100644 --- a/scene/resources/tile_set.h +++ b/scene/resources/tile_set.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -51,7 +52,7 @@ class TileSet : public Resource { Ref<OccluderPolygon2D> occluder; Vector2 navigation_polygon_offset; Ref<NavigationPolygon> navigation_polygon; - Ref<CanvasItemMaterial> material; + Ref<ShaderMaterial> material; Color modulate; // Default modulate for back-compat @@ -92,8 +93,8 @@ public: void tile_set_shape(int p_id, const Ref<Shape2D> &p_shape); Ref<Shape2D> tile_get_shape(int p_id) const; - void tile_set_material(int p_id, const Ref<CanvasItemMaterial> &p_material); - Ref<CanvasItemMaterial> tile_get_material(int p_id) const; + void tile_set_material(int p_id, const Ref<ShaderMaterial> &p_material); + Ref<ShaderMaterial> tile_get_material(int p_id) const; void tile_set_modulate(int p_id, const Color &p_color); Color tile_get_modulate(int p_id) const; diff --git a/scene/resources/video_stream.cpp b/scene/resources/video_stream.cpp index 47c40e4e6b..1b0e34b8db 100644 --- a/scene/resources/video_stream.cpp +++ b/scene/resources/video_stream.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/video_stream.h b/scene/resources/video_stream.h index 7c1bd94c8b..544973f581 100644 --- a/scene/resources/video_stream.h +++ b/scene/resources/video_stream.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/world.cpp b/scene/resources/world.cpp index dc62c2ab3e..eab7cf6098 100644 --- a/scene/resources/world.cpp +++ b/scene/resources/world.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/world.h b/scene/resources/world.h index a597633ca1..f2c85f31f6 100644 --- a/scene/resources/world.h +++ b/scene/resources/world.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/world_2d.cpp b/scene/resources/world_2d.cpp index cb346199c9..db72ccd03c 100644 --- a/scene/resources/world_2d.cpp +++ b/scene/resources/world_2d.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/resources/world_2d.h b/scene/resources/world_2d.h index 2bb5eb1526..2b6e7e7383 100644 --- a/scene/resources/world_2d.h +++ b/scene/resources/world_2d.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/scene_string_names.cpp b/scene/scene_string_names.cpp index d4a5429c02..c6277dbbb8 100644 --- a/scene/scene_string_names.cpp +++ b/scene/scene_string_names.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/scene/scene_string_names.h b/scene/scene_string_names.h index 3ca006daba..3e4c80d4f7 100644 --- a/scene/scene_string_names.h +++ b/scene/scene_string_names.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/audio/audio_driver_dummy.cpp b/servers/audio/audio_driver_dummy.cpp index e3022225a3..3aaf73df03 100644 --- a/servers/audio/audio_driver_dummy.cpp +++ b/servers/audio/audio_driver_dummy.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/audio/audio_driver_dummy.h b/servers/audio/audio_driver_dummy.h index 02f6a5407c..eadac44c5a 100644 --- a/servers/audio/audio_driver_dummy.h +++ b/servers/audio/audio_driver_dummy.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/audio/audio_effect.cpp b/servers/audio/audio_effect.cpp index bb1179134c..edb79adb60 100644 --- a/servers/audio/audio_effect.cpp +++ b/servers/audio/audio_effect.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/audio/audio_effect.h b/servers/audio/audio_effect.h index 6981cf0db7..570b2025b1 100644 --- a/servers/audio/audio_effect.h +++ b/servers/audio/audio_effect.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/audio/audio_filter_sw.cpp b/servers/audio/audio_filter_sw.cpp index 4bfe31247b..1210312ac5 100644 --- a/servers/audio/audio_filter_sw.cpp +++ b/servers/audio/audio_filter_sw.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/audio/audio_filter_sw.h b/servers/audio/audio_filter_sw.h index bbd006e525..e1dd5e5c0e 100644 --- a/servers/audio/audio_filter_sw.h +++ b/servers/audio/audio_filter_sw.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/audio/audio_rb_resampler.cpp b/servers/audio/audio_rb_resampler.cpp index bf10f813a2..a5d0a53be6 100644 --- a/servers/audio/audio_rb_resampler.cpp +++ b/servers/audio/audio_rb_resampler.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/audio/audio_rb_resampler.h b/servers/audio/audio_rb_resampler.h index d775aed0d9..a906f1bb20 100644 --- a/servers/audio/audio_rb_resampler.h +++ b/servers/audio/audio_rb_resampler.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/audio/audio_stream.cpp b/servers/audio/audio_stream.cpp index 5f77eb54f6..14a091e27c 100644 --- a/servers/audio/audio_stream.cpp +++ b/servers/audio/audio_stream.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/audio/audio_stream.h b/servers/audio/audio_stream.h index 0d7b4adbfe..1cf3cd294d 100644 --- a/servers/audio/audio_stream.h +++ b/servers/audio/audio_stream.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/audio/effects/audio_effect_amplify.cpp b/servers/audio/effects/audio_effect_amplify.cpp index 6a4d03e517..91d1e84182 100644 --- a/servers/audio/effects/audio_effect_amplify.cpp +++ b/servers/audio/effects/audio_effect_amplify.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/audio/effects/audio_effect_amplify.h b/servers/audio/effects/audio_effect_amplify.h index 0c75b43691..bba9e352b2 100644 --- a/servers/audio/effects/audio_effect_amplify.h +++ b/servers/audio/effects/audio_effect_amplify.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/audio/effects/audio_effect_chorus.cpp b/servers/audio/effects/audio_effect_chorus.cpp index 27b03351c8..8fb7ef2cd0 100644 --- a/servers/audio/effects/audio_effect_chorus.cpp +++ b/servers/audio/effects/audio_effect_chorus.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/audio/effects/audio_effect_chorus.h b/servers/audio/effects/audio_effect_chorus.h index 9af9ab1b9a..5db335e288 100644 --- a/servers/audio/effects/audio_effect_chorus.h +++ b/servers/audio/effects/audio_effect_chorus.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/audio/effects/audio_effect_compressor.cpp b/servers/audio/effects/audio_effect_compressor.cpp index 8b67353229..997a620f7c 100644 --- a/servers/audio/effects/audio_effect_compressor.cpp +++ b/servers/audio/effects/audio_effect_compressor.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/audio/effects/audio_effect_compressor.h b/servers/audio/effects/audio_effect_compressor.h index 34f80348db..a624370962 100644 --- a/servers/audio/effects/audio_effect_compressor.h +++ b/servers/audio/effects/audio_effect_compressor.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/audio/effects/audio_effect_delay.cpp b/servers/audio/effects/audio_effect_delay.cpp index b643f801a7..de301fba6f 100644 --- a/servers/audio/effects/audio_effect_delay.cpp +++ b/servers/audio/effects/audio_effect_delay.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/audio/effects/audio_effect_delay.h b/servers/audio/effects/audio_effect_delay.h index 247fddac00..9d80c752d3 100644 --- a/servers/audio/effects/audio_effect_delay.h +++ b/servers/audio/effects/audio_effect_delay.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/audio/effects/audio_effect_distortion.cpp b/servers/audio/effects/audio_effect_distortion.cpp index e5430fcd21..87cf520e19 100644 --- a/servers/audio/effects/audio_effect_distortion.cpp +++ b/servers/audio/effects/audio_effect_distortion.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/audio/effects/audio_effect_distortion.h b/servers/audio/effects/audio_effect_distortion.h index 6cd92dea18..2f84bd4dc7 100644 --- a/servers/audio/effects/audio_effect_distortion.h +++ b/servers/audio/effects/audio_effect_distortion.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/audio/effects/audio_effect_eq.cpp b/servers/audio/effects/audio_effect_eq.cpp index a103d34d0f..87f793f95e 100644 --- a/servers/audio/effects/audio_effect_eq.cpp +++ b/servers/audio/effects/audio_effect_eq.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/audio/effects/audio_effect_eq.h b/servers/audio/effects/audio_effect_eq.h index 917bf584c7..62041fe4f7 100644 --- a/servers/audio/effects/audio_effect_eq.h +++ b/servers/audio/effects/audio_effect_eq.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/audio/effects/audio_effect_filter.cpp b/servers/audio/effects/audio_effect_filter.cpp index 4c158ce44e..bcf1cc5756 100644 --- a/servers/audio/effects/audio_effect_filter.cpp +++ b/servers/audio/effects/audio_effect_filter.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/audio/effects/audio_effect_filter.h b/servers/audio/effects/audio_effect_filter.h index 4973630198..51932cdbf5 100644 --- a/servers/audio/effects/audio_effect_filter.h +++ b/servers/audio/effects/audio_effect_filter.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/audio/effects/audio_effect_limiter.cpp b/servers/audio/effects/audio_effect_limiter.cpp index 022d2d9aa4..e049e5d53a 100644 --- a/servers/audio/effects/audio_effect_limiter.cpp +++ b/servers/audio/effects/audio_effect_limiter.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/audio/effects/audio_effect_limiter.h b/servers/audio/effects/audio_effect_limiter.h index 9863a788f5..a684eccbfa 100644 --- a/servers/audio/effects/audio_effect_limiter.h +++ b/servers/audio/effects/audio_effect_limiter.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/audio/effects/audio_effect_panner.cpp b/servers/audio/effects/audio_effect_panner.cpp index ec0ccab453..a6103f580a 100644 --- a/servers/audio/effects/audio_effect_panner.cpp +++ b/servers/audio/effects/audio_effect_panner.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/audio/effects/audio_effect_panner.h b/servers/audio/effects/audio_effect_panner.h index 19bef45f1e..4b41fecc45 100644 --- a/servers/audio/effects/audio_effect_panner.h +++ b/servers/audio/effects/audio_effect_panner.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/audio/effects/audio_effect_phaser.cpp b/servers/audio/effects/audio_effect_phaser.cpp index 72549009c8..9af344d876 100644 --- a/servers/audio/effects/audio_effect_phaser.cpp +++ b/servers/audio/effects/audio_effect_phaser.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/audio/effects/audio_effect_phaser.h b/servers/audio/effects/audio_effect_phaser.h index 70b3a3a4c4..c587ca8239 100644 --- a/servers/audio/effects/audio_effect_phaser.h +++ b/servers/audio/effects/audio_effect_phaser.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/audio/effects/audio_effect_pitch_shift.cpp b/servers/audio/effects/audio_effect_pitch_shift.cpp index 6a14ba7155..1889934f29 100644 --- a/servers/audio/effects/audio_effect_pitch_shift.cpp +++ b/servers/audio/effects/audio_effect_pitch_shift.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/audio/effects/audio_effect_pitch_shift.h b/servers/audio/effects/audio_effect_pitch_shift.h index 610efdc0e1..08c8c59cc7 100644 --- a/servers/audio/effects/audio_effect_pitch_shift.h +++ b/servers/audio/effects/audio_effect_pitch_shift.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/audio/effects/audio_effect_reverb.cpp b/servers/audio/effects/audio_effect_reverb.cpp index f01bd266b8..7049204645 100644 --- a/servers/audio/effects/audio_effect_reverb.cpp +++ b/servers/audio/effects/audio_effect_reverb.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/audio/effects/audio_effect_reverb.h b/servers/audio/effects/audio_effect_reverb.h index 2c665ca916..d8f13da8b7 100644 --- a/servers/audio/effects/audio_effect_reverb.h +++ b/servers/audio/effects/audio_effect_reverb.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/audio/effects/audio_effect_stereo_enhance.cpp b/servers/audio/effects/audio_effect_stereo_enhance.cpp index 9aed528bd3..ebd48c0546 100644 --- a/servers/audio/effects/audio_effect_stereo_enhance.cpp +++ b/servers/audio/effects/audio_effect_stereo_enhance.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/audio/effects/audio_effect_stereo_enhance.h b/servers/audio/effects/audio_effect_stereo_enhance.h index 21331692e9..bad55614c6 100644 --- a/servers/audio/effects/audio_effect_stereo_enhance.h +++ b/servers/audio/effects/audio_effect_stereo_enhance.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/audio/effects/eq.cpp b/servers/audio/effects/eq.cpp index 857f81e856..4dd5eb0ebe 100644 --- a/servers/audio/effects/eq.cpp +++ b/servers/audio/effects/eq.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/audio/effects/eq.h b/servers/audio/effects/eq.h index a6d471cc4a..90d19e6e91 100644 --- a/servers/audio/effects/eq.h +++ b/servers/audio/effects/eq.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/audio/effects/reverb.cpp b/servers/audio/effects/reverb.cpp index 26e6f50667..7bc8c5cac3 100644 --- a/servers/audio/effects/reverb.cpp +++ b/servers/audio/effects/reverb.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/audio/effects/reverb.h b/servers/audio/effects/reverb.h index 33f11e59fe..d4ddb3902a 100644 --- a/servers/audio/effects/reverb.h +++ b/servers/audio/effects/reverb.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/audio/reverb_sw.cpp b/servers/audio/reverb_sw.cpp index ea89f7e198..45fd7fd7de 100644 --- a/servers/audio/reverb_sw.cpp +++ b/servers/audio/reverb_sw.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/audio/reverb_sw.h b/servers/audio/reverb_sw.h index 06a14322a6..f912734e65 100644 --- a/servers/audio/reverb_sw.h +++ b/servers/audio/reverb_sw.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/audio/voice_rb_sw.h b/servers/audio/voice_rb_sw.h index 117a62a436..a4a5ec3ddd 100644 --- a/servers/audio/voice_rb_sw.h +++ b/servers/audio/voice_rb_sw.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/audio_server.cpp b/servers/audio_server.cpp index 5f70f52576..1b1ed45862 100644 --- a/servers/audio_server.cpp +++ b/servers/audio_server.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/audio_server.h b/servers/audio_server.h index eed0a5e4c6..f4c22c0b33 100644 --- a/servers/audio_server.h +++ b/servers/audio_server.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics/area_pair_sw.cpp b/servers/physics/area_pair_sw.cpp index d1040baa65..8ec001709d 100644 --- a/servers/physics/area_pair_sw.cpp +++ b/servers/physics/area_pair_sw.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics/area_pair_sw.h b/servers/physics/area_pair_sw.h index 8fc7e7efaa..75df6043ea 100644 --- a/servers/physics/area_pair_sw.h +++ b/servers/physics/area_pair_sw.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics/area_sw.cpp b/servers/physics/area_sw.cpp index dfb5d191bc..a310ed3411 100644 --- a/servers/physics/area_sw.cpp +++ b/servers/physics/area_sw.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics/area_sw.h b/servers/physics/area_sw.h index 2c0cd8dbcd..06e58e3d5a 100644 --- a/servers/physics/area_sw.h +++ b/servers/physics/area_sw.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics/body_pair_sw.cpp b/servers/physics/body_pair_sw.cpp index 555d5f15c5..d740d3c384 100644 --- a/servers/physics/body_pair_sw.cpp +++ b/servers/physics/body_pair_sw.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics/body_pair_sw.h b/servers/physics/body_pair_sw.h index fa426adafd..cb16849399 100644 --- a/servers/physics/body_pair_sw.h +++ b/servers/physics/body_pair_sw.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics/body_sw.cpp b/servers/physics/body_sw.cpp index 6b43ec31aa..9def425f28 100644 --- a/servers/physics/body_sw.cpp +++ b/servers/physics/body_sw.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics/body_sw.h b/servers/physics/body_sw.h index 4b1af6fca5..c3e051c2d0 100644 --- a/servers/physics/body_sw.h +++ b/servers/physics/body_sw.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics/broad_phase_basic.cpp b/servers/physics/broad_phase_basic.cpp index ca9bb40842..77d8538574 100644 --- a/servers/physics/broad_phase_basic.cpp +++ b/servers/physics/broad_phase_basic.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics/broad_phase_basic.h b/servers/physics/broad_phase_basic.h index 2824af6b68..a285204a32 100644 --- a/servers/physics/broad_phase_basic.h +++ b/servers/physics/broad_phase_basic.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics/broad_phase_octree.cpp b/servers/physics/broad_phase_octree.cpp index cb64077d9a..d18da1b238 100644 --- a/servers/physics/broad_phase_octree.cpp +++ b/servers/physics/broad_phase_octree.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics/broad_phase_octree.h b/servers/physics/broad_phase_octree.h index f9a8bd17ed..086fb0a1a3 100644 --- a/servers/physics/broad_phase_octree.h +++ b/servers/physics/broad_phase_octree.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics/broad_phase_sw.cpp b/servers/physics/broad_phase_sw.cpp index f9a19e558b..c3d42d4c2f 100644 --- a/servers/physics/broad_phase_sw.cpp +++ b/servers/physics/broad_phase_sw.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics/broad_phase_sw.h b/servers/physics/broad_phase_sw.h index df6ea1cc73..8fe901c8ef 100644 --- a/servers/physics/broad_phase_sw.h +++ b/servers/physics/broad_phase_sw.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics/collision_object_sw.cpp b/servers/physics/collision_object_sw.cpp index 36704b6eb8..5eb10a4d09 100644 --- a/servers/physics/collision_object_sw.cpp +++ b/servers/physics/collision_object_sw.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics/collision_object_sw.h b/servers/physics/collision_object_sw.h index 9a7626d583..0767f88ba1 100644 --- a/servers/physics/collision_object_sw.h +++ b/servers/physics/collision_object_sw.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics/collision_solver_sat.cpp b/servers/physics/collision_solver_sat.cpp index 003e6b3257..427a75cf93 100644 --- a/servers/physics/collision_solver_sat.cpp +++ b/servers/physics/collision_solver_sat.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics/collision_solver_sat.h b/servers/physics/collision_solver_sat.h index 67ffb0b068..d5fae7798a 100644 --- a/servers/physics/collision_solver_sat.h +++ b/servers/physics/collision_solver_sat.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics/collision_solver_sw.cpp b/servers/physics/collision_solver_sw.cpp index 0f6e964359..38ce31ec78 100644 --- a/servers/physics/collision_solver_sw.cpp +++ b/servers/physics/collision_solver_sw.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics/collision_solver_sw.h b/servers/physics/collision_solver_sw.h index b0f18dc0ac..5a4e864eb5 100644 --- a/servers/physics/collision_solver_sw.h +++ b/servers/physics/collision_solver_sw.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics/constraint_sw.h b/servers/physics/constraint_sw.h index 2cd0e1a420..d9f153a6a6 100644 --- a/servers/physics/constraint_sw.h +++ b/servers/physics/constraint_sw.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics/gjk_epa.cpp b/servers/physics/gjk_epa.cpp index 2c5610ee89..2819aa7ca0 100644 --- a/servers/physics/gjk_epa.cpp +++ b/servers/physics/gjk_epa.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics/gjk_epa.h b/servers/physics/gjk_epa.h index ae5db733b5..316b991477 100644 --- a/servers/physics/gjk_epa.h +++ b/servers/physics/gjk_epa.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics/joints/cone_twist_joint_sw.cpp b/servers/physics/joints/cone_twist_joint_sw.cpp index 8cab81de2c..d94618fd9f 100644 --- a/servers/physics/joints/cone_twist_joint_sw.cpp +++ b/servers/physics/joints/cone_twist_joint_sw.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics/joints/cone_twist_joint_sw.h b/servers/physics/joints/cone_twist_joint_sw.h index c122c22258..65d26d0ca7 100644 --- a/servers/physics/joints/cone_twist_joint_sw.h +++ b/servers/physics/joints/cone_twist_joint_sw.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics/joints/generic_6dof_joint_sw.cpp b/servers/physics/joints/generic_6dof_joint_sw.cpp index 1e07bc73fb..a1d0360db6 100644 --- a/servers/physics/joints/generic_6dof_joint_sw.cpp +++ b/servers/physics/joints/generic_6dof_joint_sw.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics/joints/generic_6dof_joint_sw.h b/servers/physics/joints/generic_6dof_joint_sw.h index bd9a1e5f0e..4af0c93876 100644 --- a/servers/physics/joints/generic_6dof_joint_sw.h +++ b/servers/physics/joints/generic_6dof_joint_sw.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics/joints/hinge_joint_sw.cpp b/servers/physics/joints/hinge_joint_sw.cpp index eaa57af873..b63fcaecd1 100644 --- a/servers/physics/joints/hinge_joint_sw.cpp +++ b/servers/physics/joints/hinge_joint_sw.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics/joints/hinge_joint_sw.h b/servers/physics/joints/hinge_joint_sw.h index 013d9afdbf..5ebf0cb165 100644 --- a/servers/physics/joints/hinge_joint_sw.h +++ b/servers/physics/joints/hinge_joint_sw.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics/joints/jacobian_entry_sw.h b/servers/physics/joints/jacobian_entry_sw.h index b0b31ed797..537a9a8f3d 100644 --- a/servers/physics/joints/jacobian_entry_sw.h +++ b/servers/physics/joints/jacobian_entry_sw.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics/joints/pin_joint_sw.cpp b/servers/physics/joints/pin_joint_sw.cpp index e01514f4b6..80a4bd7f44 100644 --- a/servers/physics/joints/pin_joint_sw.cpp +++ b/servers/physics/joints/pin_joint_sw.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics/joints/pin_joint_sw.h b/servers/physics/joints/pin_joint_sw.h index 9500d4b46d..644c204066 100644 --- a/servers/physics/joints/pin_joint_sw.h +++ b/servers/physics/joints/pin_joint_sw.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics/joints/slider_joint_sw.cpp b/servers/physics/joints/slider_joint_sw.cpp index b8a6c1ecaf..ecc4be3b5e 100644 --- a/servers/physics/joints/slider_joint_sw.cpp +++ b/servers/physics/joints/slider_joint_sw.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics/joints/slider_joint_sw.h b/servers/physics/joints/slider_joint_sw.h index faf36bfe9e..7818ee2a5c 100644 --- a/servers/physics/joints/slider_joint_sw.h +++ b/servers/physics/joints/slider_joint_sw.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics/joints_sw.h b/servers/physics/joints_sw.h index 0f637faf79..b25939d523 100644 --- a/servers/physics/joints_sw.h +++ b/servers/physics/joints_sw.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics/physics_server_sw.cpp b/servers/physics/physics_server_sw.cpp index 6fc983a739..727ff38718 100644 --- a/servers/physics/physics_server_sw.cpp +++ b/servers/physics/physics_server_sw.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics/physics_server_sw.h b/servers/physics/physics_server_sw.h index cb5a339ee8..44f9aff662 100644 --- a/servers/physics/physics_server_sw.h +++ b/servers/physics/physics_server_sw.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics/shape_sw.cpp b/servers/physics/shape_sw.cpp index 4ce716c70a..ff7b442442 100644 --- a/servers/physics/shape_sw.cpp +++ b/servers/physics/shape_sw.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics/shape_sw.h b/servers/physics/shape_sw.h index 442cbc39eb..808ff0a3a1 100644 --- a/servers/physics/shape_sw.h +++ b/servers/physics/shape_sw.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics/space_sw.cpp b/servers/physics/space_sw.cpp index 2043f9fed8..a4bf857bd8 100644 --- a/servers/physics/space_sw.cpp +++ b/servers/physics/space_sw.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics/space_sw.h b/servers/physics/space_sw.h index 06538265bb..20a2a06862 100644 --- a/servers/physics/space_sw.h +++ b/servers/physics/space_sw.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics/step_sw.cpp b/servers/physics/step_sw.cpp index c7b1be7a9b..5b5f5201db 100644 --- a/servers/physics/step_sw.cpp +++ b/servers/physics/step_sw.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics/step_sw.h b/servers/physics/step_sw.h index 54f5fe9857..893bcfa6ad 100644 --- a/servers/physics/step_sw.h +++ b/servers/physics/step_sw.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics_2d/area_2d_sw.cpp b/servers/physics_2d/area_2d_sw.cpp index 885ede7cbf..fc5167c720 100644 --- a/servers/physics_2d/area_2d_sw.cpp +++ b/servers/physics_2d/area_2d_sw.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics_2d/area_2d_sw.h b/servers/physics_2d/area_2d_sw.h index 8c52c96527..68b3c61e44 100644 --- a/servers/physics_2d/area_2d_sw.h +++ b/servers/physics_2d/area_2d_sw.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics_2d/area_pair_2d_sw.cpp b/servers/physics_2d/area_pair_2d_sw.cpp index 769db8eb35..c98375fc44 100644 --- a/servers/physics_2d/area_pair_2d_sw.cpp +++ b/servers/physics_2d/area_pair_2d_sw.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics_2d/area_pair_2d_sw.h b/servers/physics_2d/area_pair_2d_sw.h index 78be9572bf..05954424f8 100644 --- a/servers/physics_2d/area_pair_2d_sw.h +++ b/servers/physics_2d/area_pair_2d_sw.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics_2d/body_2d_sw.cpp b/servers/physics_2d/body_2d_sw.cpp index 26f319559e..03ad66d4e9 100644 --- a/servers/physics_2d/body_2d_sw.cpp +++ b/servers/physics_2d/body_2d_sw.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics_2d/body_2d_sw.h b/servers/physics_2d/body_2d_sw.h index 7e4fef8df3..23adebbad6 100644 --- a/servers/physics_2d/body_2d_sw.h +++ b/servers/physics_2d/body_2d_sw.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics_2d/body_pair_2d_sw.cpp b/servers/physics_2d/body_pair_2d_sw.cpp index ee94a7acec..47e9afbde6 100644 --- a/servers/physics_2d/body_pair_2d_sw.cpp +++ b/servers/physics_2d/body_pair_2d_sw.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics_2d/body_pair_2d_sw.h b/servers/physics_2d/body_pair_2d_sw.h index 023c182c31..4d2b3b31f9 100644 --- a/servers/physics_2d/body_pair_2d_sw.h +++ b/servers/physics_2d/body_pair_2d_sw.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics_2d/broad_phase_2d_basic.cpp b/servers/physics_2d/broad_phase_2d_basic.cpp index c282c0364e..a0bcd37fbc 100644 --- a/servers/physics_2d/broad_phase_2d_basic.cpp +++ b/servers/physics_2d/broad_phase_2d_basic.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics_2d/broad_phase_2d_basic.h b/servers/physics_2d/broad_phase_2d_basic.h index 7c5d799f9a..edd788266a 100644 --- a/servers/physics_2d/broad_phase_2d_basic.h +++ b/servers/physics_2d/broad_phase_2d_basic.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics_2d/broad_phase_2d_hash_grid.cpp b/servers/physics_2d/broad_phase_2d_hash_grid.cpp index 74c01e1220..e39a5b6df1 100644 --- a/servers/physics_2d/broad_phase_2d_hash_grid.cpp +++ b/servers/physics_2d/broad_phase_2d_hash_grid.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics_2d/broad_phase_2d_hash_grid.h b/servers/physics_2d/broad_phase_2d_hash_grid.h index f30f72d6db..2234557857 100644 --- a/servers/physics_2d/broad_phase_2d_hash_grid.h +++ b/servers/physics_2d/broad_phase_2d_hash_grid.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics_2d/broad_phase_2d_sw.cpp b/servers/physics_2d/broad_phase_2d_sw.cpp index 8cde46217b..a412f76567 100644 --- a/servers/physics_2d/broad_phase_2d_sw.cpp +++ b/servers/physics_2d/broad_phase_2d_sw.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics_2d/broad_phase_2d_sw.h b/servers/physics_2d/broad_phase_2d_sw.h index a255cc6ba7..0309cbe730 100644 --- a/servers/physics_2d/broad_phase_2d_sw.h +++ b/servers/physics_2d/broad_phase_2d_sw.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics_2d/collision_object_2d_sw.cpp b/servers/physics_2d/collision_object_2d_sw.cpp index 30bb9f6b52..265b5bb836 100644 --- a/servers/physics_2d/collision_object_2d_sw.cpp +++ b/servers/physics_2d/collision_object_2d_sw.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics_2d/collision_object_2d_sw.h b/servers/physics_2d/collision_object_2d_sw.h index e6eec05f3d..8ca6c92dbc 100644 --- a/servers/physics_2d/collision_object_2d_sw.h +++ b/servers/physics_2d/collision_object_2d_sw.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics_2d/collision_solver_2d_sat.cpp b/servers/physics_2d/collision_solver_2d_sat.cpp index f72a7ef0e4..a5a6cd7eac 100644 --- a/servers/physics_2d/collision_solver_2d_sat.cpp +++ b/servers/physics_2d/collision_solver_2d_sat.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics_2d/collision_solver_2d_sat.h b/servers/physics_2d/collision_solver_2d_sat.h index a13c3dd14d..2a075e2a30 100644 --- a/servers/physics_2d/collision_solver_2d_sat.h +++ b/servers/physics_2d/collision_solver_2d_sat.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics_2d/collision_solver_2d_sw.cpp b/servers/physics_2d/collision_solver_2d_sw.cpp index 6218af72a1..e57d1b7044 100644 --- a/servers/physics_2d/collision_solver_2d_sw.cpp +++ b/servers/physics_2d/collision_solver_2d_sw.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics_2d/collision_solver_2d_sw.h b/servers/physics_2d/collision_solver_2d_sw.h index 886cb90ace..aefd4d315d 100644 --- a/servers/physics_2d/collision_solver_2d_sw.h +++ b/servers/physics_2d/collision_solver_2d_sw.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics_2d/constraint_2d_sw.h b/servers/physics_2d/constraint_2d_sw.h index 659b5b3219..7ff28b0cf4 100644 --- a/servers/physics_2d/constraint_2d_sw.h +++ b/servers/physics_2d/constraint_2d_sw.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics_2d/joints_2d_sw.cpp b/servers/physics_2d/joints_2d_sw.cpp index 0277586495..449765621e 100644 --- a/servers/physics_2d/joints_2d_sw.cpp +++ b/servers/physics_2d/joints_2d_sw.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics_2d/joints_2d_sw.h b/servers/physics_2d/joints_2d_sw.h index 8fe38f365a..548a8b778f 100644 --- a/servers/physics_2d/joints_2d_sw.h +++ b/servers/physics_2d/joints_2d_sw.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics_2d/physics_2d_server_sw.cpp b/servers/physics_2d/physics_2d_server_sw.cpp index 92555e26b6..03e0f8a7fd 100644 --- a/servers/physics_2d/physics_2d_server_sw.cpp +++ b/servers/physics_2d/physics_2d_server_sw.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics_2d/physics_2d_server_sw.h b/servers/physics_2d/physics_2d_server_sw.h index b49c37ab21..a8d85932ff 100644 --- a/servers/physics_2d/physics_2d_server_sw.h +++ b/servers/physics_2d/physics_2d_server_sw.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics_2d/physics_2d_server_wrap_mt.cpp b/servers/physics_2d/physics_2d_server_wrap_mt.cpp index ef1a5b333c..d92c033e35 100644 --- a/servers/physics_2d/physics_2d_server_wrap_mt.cpp +++ b/servers/physics_2d/physics_2d_server_wrap_mt.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics_2d/physics_2d_server_wrap_mt.h b/servers/physics_2d/physics_2d_server_wrap_mt.h index ff30b2df09..ddcf31182a 100644 --- a/servers/physics_2d/physics_2d_server_wrap_mt.h +++ b/servers/physics_2d/physics_2d_server_wrap_mt.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics_2d/shape_2d_sw.cpp b/servers/physics_2d/shape_2d_sw.cpp index 32d632453a..203a1052b2 100644 --- a/servers/physics_2d/shape_2d_sw.cpp +++ b/servers/physics_2d/shape_2d_sw.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics_2d/shape_2d_sw.h b/servers/physics_2d/shape_2d_sw.h index 00d86da7fb..547ecdcd11 100644 --- a/servers/physics_2d/shape_2d_sw.h +++ b/servers/physics_2d/shape_2d_sw.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics_2d/space_2d_sw.cpp b/servers/physics_2d/space_2d_sw.cpp index a858a20f2c..ac479aab7a 100644 --- a/servers/physics_2d/space_2d_sw.cpp +++ b/servers/physics_2d/space_2d_sw.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics_2d/space_2d_sw.h b/servers/physics_2d/space_2d_sw.h index 103f328ed2..46435b1c66 100644 --- a/servers/physics_2d/space_2d_sw.h +++ b/servers/physics_2d/space_2d_sw.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics_2d/step_2d_sw.cpp b/servers/physics_2d/step_2d_sw.cpp index 55bc62975f..f43fef4eef 100644 --- a/servers/physics_2d/step_2d_sw.cpp +++ b/servers/physics_2d/step_2d_sw.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics_2d/step_2d_sw.h b/servers/physics_2d/step_2d_sw.h index c743358b6a..bdcb34f3ae 100644 --- a/servers/physics_2d/step_2d_sw.h +++ b/servers/physics_2d/step_2d_sw.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics_2d_server.cpp b/servers/physics_2d_server.cpp index f922b8f7a1..43295073aa 100644 --- a/servers/physics_2d_server.cpp +++ b/servers/physics_2d_server.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics_2d_server.h b/servers/physics_2d_server.h index 3c64d3df6a..4ea037e1b4 100644 --- a/servers/physics_2d_server.h +++ b/servers/physics_2d_server.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics_server.cpp b/servers/physics_server.cpp index d8f77fbe0d..b19dfc1c68 100644 --- a/servers/physics_server.cpp +++ b/servers/physics_server.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/physics_server.h b/servers/physics_server.h index dbd0c79f06..95f725b774 100644 --- a/servers/physics_server.h +++ b/servers/physics_server.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/register_server_types.cpp b/servers/register_server_types.cpp index 06bcb642ad..79b994dd27 100644 --- a/servers/register_server_types.cpp +++ b/servers/register_server_types.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/register_server_types.h b/servers/register_server_types.h index a3e7d3ee32..c183ccc8a4 100644 --- a/servers/register_server_types.h +++ b/servers/register_server_types.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/server_wrap_mt_common.h b/servers/server_wrap_mt_common.h index cfb65cf161..f6b78e8f40 100644 --- a/servers/server_wrap_mt_common.h +++ b/servers/server_wrap_mt_common.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/visual/rasterizer.cpp b/servers/visual/rasterizer.cpp index 1be65be927..b565ee8f9d 100644 --- a/servers/visual/rasterizer.cpp +++ b/servers/visual/rasterizer.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -54,10 +55,10 @@ RID Rasterizer::create_default_material() { /* Fixed MAterial SHADER API */ -RID Rasterizer::_create_shader(const FixedSpatialMaterialShaderKey& p_key) { +RID Rasterizer::_create_shader(const SpatialMaterialShaderKey& p_key) { ERR_FAIL_COND_V(!p_key.valid,RID()); - Map<FixedSpatialMaterialShaderKey,FixedSpatialMaterialShader>::Element *E=fixed_material_shaders.find(p_key); + Map<SpatialMaterialShaderKey,SpatialMaterialShader>::Element *E=fixed_material_shaders.find(p_key); if (E) { E->get().refcount++; @@ -66,7 +67,7 @@ RID Rasterizer::_create_shader(const FixedSpatialMaterialShaderKey& p_key) { uint64_t t = OS::get_singleton()->get_ticks_usec(); - FixedSpatialMaterialShader fms; + SpatialMaterialShader fms; fms.refcount=1; fms.shader=shader_create(); @@ -312,12 +313,12 @@ RID Rasterizer::_create_shader(const FixedSpatialMaterialShaderKey& p_key) { return fms.shader; } -void Rasterizer::_free_shader(const FixedSpatialMaterialShaderKey& p_key) { +void Rasterizer::_free_shader(const SpatialMaterialShaderKey& p_key) { if (p_key.valid==0) return; //not a valid key - Map<FixedSpatialMaterialShaderKey,FixedSpatialMaterialShader>::Element *E=fixed_material_shaders.find(p_key); + Map<SpatialMaterialShaderKey,SpatialMaterialShader>::Element *E=fixed_material_shaders.find(p_key); ERR_FAIL_COND(!E); E->get().refcount--; @@ -329,12 +330,12 @@ void Rasterizer::_free_shader(const FixedSpatialMaterialShaderKey& p_key) { } -void Rasterizer::fixed_material_set_flag(RID p_material, VS::FixedSpatialMaterialFlags p_flag, bool p_enabled) { +void Rasterizer::fixed_material_set_flag(RID p_material, VS::SpatialMaterialFlags p_flag, bool p_enabled) { - Map<RID,FixedSpatialMaterial*>::Element *E = fixed_materials.find(p_material); + Map<RID,SpatialMaterial*>::Element *E = fixed_materials.find(p_material); ERR_FAIL_COND(!E); - FixedSpatialMaterial &fm=*E->get(); + SpatialMaterial &fm=*E->get(); switch(p_flag) { @@ -350,11 +351,11 @@ void Rasterizer::fixed_material_set_flag(RID p_material, VS::FixedSpatialMateria } -bool Rasterizer::fixed_material_get_flag(RID p_material, VS::FixedSpatialMaterialFlags p_flag) const{ +bool Rasterizer::fixed_material_get_flag(RID p_material, VS::SpatialMaterialFlags p_flag) const{ - const Map<RID,FixedSpatialMaterial*>::Element *E = fixed_materials.find(p_material); + const Map<RID,SpatialMaterial*>::Element *E = fixed_materials.find(p_material); ERR_FAIL_COND_V(!E,false); - const FixedSpatialMaterial &fm=*E->get(); + const SpatialMaterial &fm=*E->get(); switch(p_flag) { case VS::FIXED_MATERIAL_FLAG_USE_ALPHA: return fm.use_alpha;; break; @@ -373,8 +374,8 @@ bool Rasterizer::fixed_material_get_flag(RID p_material, VS::FixedSpatialMateria RID Rasterizer::fixed_material_create() { RID mat = material_create(); - fixed_materials[mat]=memnew( FixedSpatialMaterial() ); - FixedSpatialMaterial &fm=*fixed_materials[mat]; + fixed_materials[mat]=memnew( SpatialMaterial() ); + SpatialMaterial &fm=*fixed_materials[mat]; fm.self=mat; fm.get_key(); material_set_flag(mat,VS::MATERIAL_FLAG_COLOR_ARRAY_SRGB,true); @@ -390,11 +391,11 @@ RID Rasterizer::fixed_material_create() { -void Rasterizer::fixed_material_set_parameter(RID p_material, VS::FixedSpatialMaterialParam p_parameter, const Variant& p_value){ +void Rasterizer::fixed_material_set_parameter(RID p_material, VS::SpatialMaterialParam p_parameter, const Variant& p_value){ - Map<RID,FixedSpatialMaterial*>::Element *E = fixed_materials.find(p_material); + Map<RID,SpatialMaterial*>::Element *E = fixed_materials.find(p_material); ERR_FAIL_COND(!E); - FixedSpatialMaterial &fm=*E->get(); + SpatialMaterial &fm=*E->get(); RID material=E->key(); ERR_FAIL_INDEX(p_parameter,VS::FIXED_MATERIAL_PARAM_MAX); @@ -417,24 +418,24 @@ void Rasterizer::fixed_material_set_parameter(RID p_material, VS::FixedSpatialMa } -Variant Rasterizer::fixed_material_get_parameter(RID p_material,VS::FixedSpatialMaterialParam p_parameter) const{ +Variant Rasterizer::fixed_material_get_parameter(RID p_material,VS::SpatialMaterialParam p_parameter) const{ - const Map<RID,FixedSpatialMaterial*>::Element *E = fixed_materials.find(p_material); + const Map<RID,SpatialMaterial*>::Element *E = fixed_materials.find(p_material); ERR_FAIL_COND_V(!E,Variant()); - const FixedSpatialMaterial &fm=*E->get(); + const SpatialMaterial &fm=*E->get(); ERR_FAIL_INDEX_V(p_parameter,VS::FIXED_MATERIAL_PARAM_MAX,Variant()); return fm.param[p_parameter]; } -void Rasterizer::fixed_material_set_texture(RID p_material,VS::FixedSpatialMaterialParam p_parameter, RID p_texture){ +void Rasterizer::fixed_material_set_texture(RID p_material,VS::SpatialMaterialParam p_parameter, RID p_texture){ - Map<RID,FixedSpatialMaterial*>::Element *E = fixed_materials.find(p_material); + Map<RID,SpatialMaterial*>::Element *E = fixed_materials.find(p_material); if (!E) { print_line("Not found: "+itos(p_material.get_id())); } ERR_FAIL_COND(!E); - FixedSpatialMaterial &fm=*E->get(); + SpatialMaterial &fm=*E->get(); ERR_FAIL_INDEX(p_parameter,VS::FIXED_MATERIAL_PARAM_MAX); @@ -449,22 +450,22 @@ void Rasterizer::fixed_material_set_texture(RID p_material,VS::FixedSpatialMater } -RID Rasterizer::fixed_material_get_texture(RID p_material,VS::FixedSpatialMaterialParam p_parameter) const{ +RID Rasterizer::fixed_material_get_texture(RID p_material,VS::SpatialMaterialParam p_parameter) const{ - const Map<RID,FixedSpatialMaterial*>::Element *E = fixed_materials.find(p_material); + const Map<RID,SpatialMaterial*>::Element *E = fixed_materials.find(p_material); ERR_FAIL_COND_V(!E,RID()); - const FixedSpatialMaterial &fm=*E->get(); + const SpatialMaterial &fm=*E->get(); ERR_FAIL_INDEX_V(p_parameter,VS::FIXED_MATERIAL_PARAM_MAX,RID()); return fm.texture[p_parameter]; } -void Rasterizer::fixed_material_set_texcoord_mode(RID p_material,VS::FixedSpatialMaterialParam p_parameter, VS::FixedSpatialMaterialTexCoordMode p_mode) { +void Rasterizer::fixed_material_set_texcoord_mode(RID p_material,VS::SpatialMaterialParam p_parameter, VS::SpatialMaterialTexCoordMode p_mode) { - Map<RID,FixedSpatialMaterial*>::Element *E = fixed_materials.find(p_material); + Map<RID,SpatialMaterial*>::Element *E = fixed_materials.find(p_material); ERR_FAIL_COND(!E); - FixedSpatialMaterial &fm=*E->get(); + SpatialMaterial &fm=*E->get(); ERR_FAIL_INDEX(p_parameter,VS::FIXED_MATERIAL_PARAM_MAX); fm.get_key(); @@ -476,11 +477,11 @@ void Rasterizer::fixed_material_set_texcoord_mode(RID p_material,VS::FixedSpatia } -VS::FixedSpatialMaterialTexCoordMode Rasterizer::fixed_material_get_texcoord_mode(RID p_material,VS::FixedSpatialMaterialParam p_parameter) const { +VS::SpatialMaterialTexCoordMode Rasterizer::fixed_material_get_texcoord_mode(RID p_material,VS::SpatialMaterialParam p_parameter) const { - const Map<RID,FixedSpatialMaterial*>::Element *E = fixed_materials.find(p_material); + const Map<RID,SpatialMaterial*>::Element *E = fixed_materials.find(p_material); ERR_FAIL_COND_V(!E,VS::FIXED_MATERIAL_TEXCOORD_UV); - const FixedSpatialMaterial &fm=*E->get(); + const SpatialMaterial &fm=*E->get(); ERR_FAIL_INDEX_V(p_parameter,VS::FIXED_MATERIAL_PARAM_MAX,VS::FIXED_MATERIAL_TEXCOORD_UV); return fm.texture_tc[p_parameter]; @@ -488,9 +489,9 @@ VS::FixedSpatialMaterialTexCoordMode Rasterizer::fixed_material_get_texcoord_mod void Rasterizer::fixed_material_set_uv_transform(RID p_material,const Transform& p_transform) { - Map<RID,FixedSpatialMaterial*>::Element *E = fixed_materials.find(p_material); + Map<RID,SpatialMaterial*>::Element *E = fixed_materials.find(p_material); ERR_FAIL_COND(!E); - FixedSpatialMaterial &fm=*E->get(); + SpatialMaterial &fm=*E->get(); RID material=E->key(); VS::get_singleton()->material_set_param(material,_fixed_material_uv_xform_name,p_transform); @@ -503,18 +504,18 @@ void Rasterizer::fixed_material_set_uv_transform(RID p_material,const Transform& Transform Rasterizer::fixed_material_get_uv_transform(RID p_material) const { - const Map<RID,FixedSpatialMaterial*>::Element *E = fixed_materials.find(p_material); + const Map<RID,SpatialMaterial*>::Element *E = fixed_materials.find(p_material); ERR_FAIL_COND_V(!E,Transform()); - const FixedSpatialMaterial &fm=*E->get(); + const SpatialMaterial &fm=*E->get(); return fm.uv_xform; } -void Rasterizer::fixed_material_set_light_shader(RID p_material,VS::FixedSpatialMaterialLightShader p_shader) { +void Rasterizer::fixed_material_set_light_shader(RID p_material,VS::SpatialMaterialLightShader p_shader) { - Map<RID,FixedSpatialMaterial*>::Element *E = fixed_materials.find(p_material); + Map<RID,SpatialMaterial*>::Element *E = fixed_materials.find(p_material); ERR_FAIL_COND(!E); - FixedSpatialMaterial &fm=*E->get(); + SpatialMaterial &fm=*E->get(); fm.light_shader=p_shader; @@ -523,20 +524,20 @@ void Rasterizer::fixed_material_set_light_shader(RID p_material,VS::FixedSpatial } -VS::FixedSpatialMaterialLightShader Rasterizer::fixed_material_get_light_shader(RID p_material) const { +VS::SpatialMaterialLightShader Rasterizer::fixed_material_get_light_shader(RID p_material) const { - const Map<RID,FixedSpatialMaterial*>::Element *E = fixed_materials.find(p_material); + const Map<RID,SpatialMaterial*>::Element *E = fixed_materials.find(p_material); ERR_FAIL_COND_V(!E,VS::FIXED_MATERIAL_LIGHT_SHADER_LAMBERT); - const FixedSpatialMaterial &fm=*E->get(); + const SpatialMaterial &fm=*E->get(); return fm.light_shader; } void Rasterizer::fixed_material_set_point_size(RID p_material,float p_size) { - Map<RID,FixedSpatialMaterial*>::Element *E = fixed_materials.find(p_material); + Map<RID,SpatialMaterial*>::Element *E = fixed_materials.find(p_material); ERR_FAIL_COND(!E); - FixedSpatialMaterial &fm=*E->get(); + SpatialMaterial &fm=*E->get(); RID material=E->key(); VS::get_singleton()->material_set_param(material,_fixed_material_point_size_name,p_size); @@ -548,9 +549,9 @@ void Rasterizer::fixed_material_set_point_size(RID p_material,float p_size) { float Rasterizer::fixed_material_get_point_size(RID p_material) const{ - const Map<RID,FixedSpatialMaterial*>::Element *E = fixed_materials.find(p_material); + const Map<RID,SpatialMaterial*>::Element *E = fixed_materials.find(p_material); ERR_FAIL_COND_V(!E,1.0); - const FixedSpatialMaterial &fm=*E->get(); + const SpatialMaterial &fm=*E->get(); return fm.point_size; @@ -561,9 +562,9 @@ void Rasterizer::_update_fixed_materials() { while(fixed_material_dirty_list.first()) { - FixedSpatialMaterial &fm=*fixed_material_dirty_list.first()->self(); + SpatialMaterial &fm=*fixed_material_dirty_list.first()->self(); - FixedSpatialMaterialShaderKey new_key = fm.get_key(); + SpatialMaterialShaderKey new_key = fm.get_key(); if (new_key.key!=fm.current_key.key) { _free_shader(fm.current_key); @@ -593,7 +594,7 @@ void Rasterizer::_update_fixed_materials() { void Rasterizer::_free_fixed_material(const RID& p_material) { - Map<RID,FixedSpatialMaterial*>::Element *E = fixed_materials.find(p_material); + Map<RID,SpatialMaterial*>::Element *E = fixed_materials.find(p_material); if (E) { @@ -636,7 +637,7 @@ Rasterizer::Rasterizer() { draw_viewport_func=NULL; - ERR_FAIL_COND( sizeof(FixedSpatialMaterialShaderKey)!=4); + ERR_FAIL_COND( sizeof(SpatialMaterialShaderKey)!=4); } diff --git a/servers/visual/rasterizer.h b/servers/visual/rasterizer.h index 838ddead75..3a8126f300 100644 --- a/servers/visual/rasterizer.h +++ b/servers/visual/rasterizer.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -98,9 +99,6 @@ public: //int baked_lightmap_id; bool mirror : 8; - bool depth_scale : 8; - bool billboard : 8; - bool billboard_y : 8; bool receive_shadows : 8; bool visible : 8; @@ -120,9 +118,6 @@ public: base_type = VS::INSTANCE_NONE; cast_shadows = VS::SHADOW_CASTING_SETTING_ON; receive_shadows = true; - depth_scale = false; - billboard = false; - billboard_y = false; visible = true; depth_layer = 0; layer_mask = 1; @@ -198,10 +193,7 @@ public: /* SHADER API */ - virtual RID shader_create(VS::ShaderMode p_mode = VS::SHADER_SPATIAL) = 0; - - virtual void shader_set_mode(RID p_shader, VS::ShaderMode p_mode) = 0; - virtual VS::ShaderMode shader_get_mode(RID p_shader) const = 0; + virtual RID shader_create() = 0; virtual void shader_set_code(RID p_shader, const String &p_code) = 0; virtual String shader_get_code(RID p_shader) const = 0; @@ -452,19 +444,19 @@ public: virtual void particles_set_gravity(RID p_particles, const Vector3 &p_gravity) = 0; virtual void particles_set_use_local_coordinates(RID p_particles, bool p_enable) = 0; virtual void particles_set_process_material(RID p_particles, RID p_material) = 0; - - virtual void particles_set_emission_shape(RID p_particles, VS::ParticlesEmissionShape p_shape) = 0; - virtual void particles_set_emission_sphere_radius(RID p_particles, float p_radius) = 0; - virtual void particles_set_emission_box_extents(RID p_particles, const Vector3 &p_extents) = 0; - virtual void particles_set_emission_points(RID p_particles, const PoolVector<Vector3> &p_points) = 0; + virtual void particles_set_fixed_fps(RID p_particles, int p_fps) = 0; + virtual void particles_set_fractional_delta(RID p_particles, bool p_enable) = 0; virtual void particles_set_draw_order(RID p_particles, VS::ParticlesDrawOrder p_order) = 0; virtual void particles_set_draw_passes(RID p_particles, int p_count) = 0; - virtual void particles_set_draw_pass_material(RID p_particles, int p_pass, RID p_material) = 0; virtual void particles_set_draw_pass_mesh(RID p_particles, int p_pass, RID p_mesh) = 0; + virtual void particles_request_process(RID p_particles) = 0; virtual Rect3 particles_get_current_aabb(RID p_particles) = 0; + virtual Rect3 particles_get_aabb(RID p_particles) const = 0; + + virtual void particles_set_emission_transform(RID p_particles, const Transform &p_transform) = 0; /* RENDER TARGET */ @@ -971,7 +963,7 @@ protected: /* Fixed Material Shader API */ - union FixedSpatialMaterialShaderKey { + union SpatialMaterialShaderKey { struct { uint16_t texcoord_mask; @@ -987,21 +979,21 @@ protected: uint32_t key; - _FORCE_INLINE_ bool operator<(const FixedSpatialMaterialShaderKey& p_key) const { return key<p_key.key; } + _FORCE_INLINE_ bool operator<(const SpatialMaterialShaderKey& p_key) const { return key<p_key.key; } }; - struct FixedSpatialMaterialShader { + struct SpatialMaterialShader { int refcount; RID shader; }; - Map<FixedSpatialMaterialShaderKey,FixedSpatialMaterialShader> fixed_material_shaders; + Map<SpatialMaterialShaderKey,SpatialMaterialShader> fixed_material_shaders; - RID _create_shader(const FixedSpatialMaterialShaderKey& p_key); - void _free_shader(const FixedSpatialMaterialShaderKey& p_key); + RID _create_shader(const SpatialMaterialShaderKey& p_key); + void _free_shader(const SpatialMaterialShaderKey& p_key); - struct FixedSpatialMaterial { + struct SpatialMaterial { RID self; @@ -1012,19 +1004,19 @@ protected: bool use_xy_normalmap; float point_size; Transform uv_xform; - VS::FixedSpatialMaterialLightShader light_shader; + VS::SpatialMaterialLightShader light_shader; RID texture[VS::FIXED_MATERIAL_PARAM_MAX]; Variant param[VS::FIXED_MATERIAL_PARAM_MAX]; - VS::FixedSpatialMaterialTexCoordMode texture_tc[VS::FIXED_MATERIAL_PARAM_MAX]; + VS::SpatialMaterialTexCoordMode texture_tc[VS::FIXED_MATERIAL_PARAM_MAX]; - SelfList<FixedSpatialMaterial> dirty_list; + SelfList<SpatialMaterial> dirty_list; - FixedSpatialMaterialShaderKey current_key; + SpatialMaterialShaderKey current_key; - _FORCE_INLINE_ FixedSpatialMaterialShaderKey get_key() const { + _FORCE_INLINE_ SpatialMaterialShaderKey get_key() const { - FixedSpatialMaterialShaderKey k; + SpatialMaterialShaderKey k; k.key=0; k.use_alpha=use_alpha; k.use_color_array=use_color_array; @@ -1045,7 +1037,7 @@ protected: } - FixedSpatialMaterial() : dirty_list(this) { + SpatialMaterial() : dirty_list(this) { use_alpha=false; use_color_array=false; @@ -1077,9 +1069,9 @@ protected: StringName _fixed_material_uv_xform_name; StringName _fixed_material_point_size_name; - Map<RID,FixedSpatialMaterial*> fixed_materials; + Map<RID,SpatialMaterial*> fixed_materials; - SelfList<FixedSpatialMaterial>::List fixed_material_dirty_list; + SelfList<SpatialMaterial>::List fixed_material_dirty_list; protected: void _update_fixed_materials(); @@ -1166,23 +1158,23 @@ public: virtual RID fixed_material_create(); - virtual void fixed_material_set_flag(RID p_material, VS::FixedSpatialMaterialFlags p_flag, bool p_enabled); - virtual bool fixed_material_get_flag(RID p_material, VS::FixedSpatialMaterialFlags p_flag) const; + virtual void fixed_material_set_flag(RID p_material, VS::SpatialMaterialFlags p_flag, bool p_enabled); + virtual bool fixed_material_get_flag(RID p_material, VS::SpatialMaterialFlags p_flag) const; - virtual void fixed_material_set_parameter(RID p_material, VS::FixedSpatialMaterialParam p_parameter, const Variant& p_value); - virtual Variant fixed_material_get_parameter(RID p_material,VS::FixedSpatialMaterialParam p_parameter) const; + virtual void fixed_material_set_parameter(RID p_material, VS::SpatialMaterialParam p_parameter, const Variant& p_value); + virtual Variant fixed_material_get_parameter(RID p_material,VS::SpatialMaterialParam p_parameter) const; - virtual void fixed_material_set_texture(RID p_material,VS::FixedSpatialMaterialParam p_parameter, RID p_texture); - virtual RID fixed_material_get_texture(RID p_material,VS::FixedSpatialMaterialParam p_parameter) const; + virtual void fixed_material_set_texture(RID p_material,VS::SpatialMaterialParam p_parameter, RID p_texture); + virtual RID fixed_material_get_texture(RID p_material,VS::SpatialMaterialParam p_parameter) const; - virtual void fixed_material_set_texcoord_mode(RID p_material,VS::FixedSpatialMaterialParam p_parameter, VS::FixedSpatialMaterialTexCoordMode p_mode); - virtual VS::FixedSpatialMaterialTexCoordMode fixed_material_get_texcoord_mode(RID p_material,VS::FixedSpatialMaterialParam p_parameter) const; + virtual void fixed_material_set_texcoord_mode(RID p_material,VS::SpatialMaterialParam p_parameter, VS::SpatialMaterialTexCoordMode p_mode); + virtual VS::SpatialMaterialTexCoordMode fixed_material_get_texcoord_mode(RID p_material,VS::SpatialMaterialParam p_parameter) const; virtual void fixed_material_set_uv_transform(RID p_material,const Transform& p_transform); virtual Transform fixed_material_get_uv_transform(RID p_material) const; - virtual void fixed_material_set_light_shader(RID p_material,VS::FixedSpatialMaterialLightShader p_shader); - virtual VS::FixedSpatialMaterialLightShader fixed_material_get_light_shader(RID p_material) const; + virtual void fixed_material_set_light_shader(RID p_material,VS::SpatialMaterialLightShader p_shader); + virtual VS::SpatialMaterialLightShader fixed_material_get_light_shader(RID p_material) const; virtual void fixed_material_set_point_size(RID p_material,float p_size); virtual float fixed_material_get_point_size(RID p_material) const; diff --git a/servers/visual/shader_language.cpp b/servers/visual/shader_language.cpp index bc4452d5a8..dd653ea891 100644 --- a/servers/visual/shader_language.cpp +++ b/servers/visual/shader_language.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -81,7 +82,8 @@ String ShaderLanguage::get_operator_text(Operator p_op) { "++" "--", "()", - "construct" }; + "construct", + "index" }; return op_names[p_op]; } @@ -176,6 +178,9 @@ const char *ShaderLanguage::token_names[TK_MAX] = { "PERIOD", "UNIFORM", "VARYING", + "IN", + "OUT", + "INOUT", "RENDER_MODE", "HINT_WHITE_TEXTURE", "HINT_BLACK_TEXTURE", @@ -185,6 +190,7 @@ const char *ShaderLanguage::token_names[TK_MAX] = { "HINT_BLACK_ALBEDO_TEXTURE", "HINT_COLOR", "HINT_RANGE", + "SHADER_TYPE", "CURSOR", "ERROR", "EOF", @@ -258,6 +264,9 @@ const ShaderLanguage::KeyWord ShaderLanguage::keyword_list[] = { { TK_CF_RETURN, "return" }, { TK_UNIFORM, "uniform" }, { TK_VARYING, "varying" }, + { TK_ARG_IN, "in" }, + { TK_ARG_OUT, "out" }, + { TK_ARG_INOUT, "inout" }, { TK_RENDER_MODE, "render_mode" }, { TK_HINT_WHITE_TEXTURE, "hint_white" }, { TK_HINT_BLACK_TEXTURE, "hint_black" }, @@ -267,6 +276,7 @@ const ShaderLanguage::KeyWord ShaderLanguage::keyword_list[] = { { TK_HINT_BLACK_ALBEDO_TEXTURE, "hint_black_albedo" }, { TK_HINT_COLOR, "hint_color" }, { TK_HINT_RANGE, "hint_range" }, + { TK_SHADER_TYPE, "shader_type" }, { TK_ERROR, NULL } }; @@ -368,7 +378,7 @@ ShaderLanguage::Token ShaderLanguage::_get_token() { if (GETCHAR(0) == '=') { char_idx++; return _make_token(TK_OP_GREATER_EQUAL); - } else if (GETCHAR(0) == '<') { + } else if (GETCHAR(0) == '>') { char_idx++; if (GETCHAR(0) == '=') { char_idx++; @@ -871,7 +881,7 @@ bool ShaderLanguage::_validate_operator(OperatorNode *p_op, DataType *r_ret_type } if (na == nb) { - valid = (na > TYPE_BOOL && na < TYPE_MAT2) || (p_op->op == OP_MUL && na >= TYPE_MAT2 && na <= TYPE_MAT4); + valid = (na > TYPE_BOOL && na <= TYPE_MAT4); ret_type = na; } else if (na == TYPE_INT && nb == TYPE_IVEC2) { valid = true; @@ -900,15 +910,24 @@ bool ShaderLanguage::_validate_operator(OperatorNode *p_op, DataType *r_ret_type } else if (na == TYPE_FLOAT && nb == TYPE_VEC4) { valid = true; ret_type = TYPE_VEC4; - } else if (p_op->op == OP_MUL && na == TYPE_VEC2 && nb == TYPE_MAT2) { + } else if (p_op->op == OP_MUL && na == TYPE_FLOAT && nb == TYPE_MAT2) { valid = true; ret_type = TYPE_MAT2; - } else if (p_op->op == OP_MUL && na == TYPE_VEC3 && nb == TYPE_MAT3) { + } else if (p_op->op == OP_MUL && na == TYPE_FLOAT && nb == TYPE_MAT3) { valid = true; ret_type = TYPE_MAT3; - } else if (p_op->op == OP_MUL && na == TYPE_VEC4 && nb == TYPE_MAT4) { + } else if (p_op->op == OP_MUL && na == TYPE_FLOAT && nb == TYPE_MAT4) { valid = true; ret_type = TYPE_MAT4; + } else if (p_op->op == OP_MUL && na == TYPE_VEC2 && nb == TYPE_MAT2) { + valid = true; + ret_type = TYPE_VEC2; + } else if (p_op->op == OP_MUL && na == TYPE_VEC3 && nb == TYPE_MAT3) { + valid = true; + ret_type = TYPE_VEC3; + } else if (p_op->op == OP_MUL && na == TYPE_VEC4 && nb == TYPE_MAT4) { + valid = true; + ret_type = TYPE_VEC4; } } break; case OP_ASSIGN_MOD: @@ -977,14 +996,6 @@ bool ShaderLanguage::_validate_operator(OperatorNode *p_op, DataType *r_ret_type DataType na = p_op->arguments[0]->get_datatype(); DataType nb = p_op->arguments[1]->get_datatype(); - if (na >= TYPE_UINT && na <= TYPE_UVEC4) { - na = DataType(na - 4); - } - - if (nb >= TYPE_UINT && nb <= TYPE_UVEC4) { - nb = DataType(nb - 4); - } - if (na == TYPE_INT && nb == TYPE_INT) { valid = true; ret_type = TYPE_INT; @@ -1006,6 +1017,27 @@ bool ShaderLanguage::_validate_operator(OperatorNode *p_op, DataType *r_ret_type } else if (na == TYPE_IVEC4 && nb == TYPE_IVEC4) { valid = true; ret_type = TYPE_IVEC4; + } else if (na == TYPE_UINT && nb == TYPE_UINT) { + valid = true; + ret_type = TYPE_UINT; + } else if (na == TYPE_UVEC2 && nb == TYPE_UINT) { + valid = true; + ret_type = TYPE_UVEC2; + } else if (na == TYPE_UVEC3 && nb == TYPE_UINT) { + valid = true; + ret_type = TYPE_UVEC3; + } else if (na == TYPE_UVEC4 && nb == TYPE_UINT) { + valid = true; + ret_type = TYPE_UVEC4; + } else if (na == TYPE_UVEC2 && nb == TYPE_UVEC2) { + valid = true; + ret_type = TYPE_UVEC2; + } else if (na == TYPE_UVEC3 && nb == TYPE_UVEC3) { + valid = true; + ret_type = TYPE_UVEC3; + } else if (na == TYPE_UVEC4 && nb == TYPE_UVEC4) { + valid = true; + ret_type = TYPE_UVEC4; } } break; case OP_ASSIGN: { @@ -1651,25 +1683,19 @@ const ShaderLanguage::BuiltinFuncDef ShaderLanguage::builtin_func_defs[] = { { "not", TYPE_BOOL, { TYPE_BVEC4, TYPE_VOID } }, //builtins - texture - { "textureSize", TYPE_VEC2, { TYPE_SAMPLER2D, TYPE_INT, TYPE_VOID } }, - { "textureSize", TYPE_VEC2, { TYPE_ISAMPLER2D, TYPE_INT, TYPE_VOID } }, - { "textureSize", TYPE_VEC2, { TYPE_USAMPLER2D, TYPE_INT, TYPE_VOID } }, - { "textureSize", TYPE_VEC2, { TYPE_SAMPLERCUBE, TYPE_INT, TYPE_VOID } }, + { "textureSize", TYPE_IVEC2, { TYPE_SAMPLER2D, TYPE_INT, TYPE_VOID } }, + { "textureSize", TYPE_IVEC2, { TYPE_ISAMPLER2D, TYPE_INT, TYPE_VOID } }, + { "textureSize", TYPE_IVEC2, { TYPE_USAMPLER2D, TYPE_INT, TYPE_VOID } }, + { "textureSize", TYPE_IVEC2, { TYPE_SAMPLERCUBE, TYPE_INT, TYPE_VOID } }, { "texture", TYPE_VEC4, { TYPE_SAMPLER2D, TYPE_VEC2, TYPE_VOID } }, - { "texture", TYPE_VEC4, { TYPE_SAMPLER2D, TYPE_VEC3, TYPE_VOID } }, { "texture", TYPE_VEC4, { TYPE_SAMPLER2D, TYPE_VEC2, TYPE_FLOAT, TYPE_VOID } }, - { "texture", TYPE_VEC4, { TYPE_SAMPLER2D, TYPE_VEC3, TYPE_FLOAT, TYPE_VOID } }, { "texture", TYPE_UVEC4, { TYPE_USAMPLER2D, TYPE_VEC2, TYPE_VOID } }, - { "texture", TYPE_UVEC4, { TYPE_USAMPLER2D, TYPE_VEC3, TYPE_VOID } }, { "texture", TYPE_UVEC4, { TYPE_USAMPLER2D, TYPE_VEC2, TYPE_FLOAT, TYPE_VOID } }, - { "texture", TYPE_UVEC4, { TYPE_USAMPLER2D, TYPE_VEC3, TYPE_FLOAT, TYPE_VOID } }, { "texture", TYPE_IVEC4, { TYPE_ISAMPLER2D, TYPE_VEC2, TYPE_VOID } }, - { "texture", TYPE_IVEC4, { TYPE_ISAMPLER2D, TYPE_VEC3, TYPE_VOID } }, { "texture", TYPE_IVEC4, { TYPE_ISAMPLER2D, TYPE_VEC2, TYPE_FLOAT, TYPE_VOID } }, - { "texture", TYPE_IVEC4, { TYPE_ISAMPLER2D, TYPE_VEC3, TYPE_FLOAT, TYPE_VOID } }, { "texture", TYPE_VEC4, { TYPE_SAMPLERCUBE, TYPE_VEC3, TYPE_VOID } }, { "texture", TYPE_VEC4, { TYPE_SAMPLERCUBE, TYPE_VEC3, TYPE_FLOAT, TYPE_VOID } }, @@ -1689,9 +1715,9 @@ const ShaderLanguage::BuiltinFuncDef ShaderLanguage::builtin_func_defs[] = { { "textureProj", TYPE_UVEC4, { TYPE_USAMPLER2D, TYPE_VEC3, TYPE_FLOAT, TYPE_VOID } }, { "textureProj", TYPE_UVEC4, { TYPE_USAMPLER2D, TYPE_VEC4, TYPE_FLOAT, TYPE_VOID } }, - { "textureLod", TYPE_VEC4, { TYPE_SAMPLER2D, TYPE_VEC3, TYPE_FLOAT, TYPE_VOID } }, - { "textureLod", TYPE_IVEC4, { TYPE_ISAMPLER2D, TYPE_VEC3, TYPE_FLOAT, TYPE_VOID } }, - { "textureLod", TYPE_UVEC4, { TYPE_USAMPLER2D, TYPE_VEC3, TYPE_FLOAT, TYPE_VOID } }, + { "textureLod", TYPE_VEC4, { TYPE_SAMPLER2D, TYPE_VEC2, TYPE_FLOAT, TYPE_VOID } }, + { "textureLod", TYPE_IVEC4, { TYPE_ISAMPLER2D, TYPE_VEC2, TYPE_FLOAT, TYPE_VOID } }, + { "textureLod", TYPE_UVEC4, { TYPE_USAMPLER2D, TYPE_VEC2, TYPE_FLOAT, TYPE_VOID } }, { "textureLod", TYPE_VEC4, { TYPE_SAMPLERCUBE, TYPE_VEC3, TYPE_FLOAT, TYPE_VOID } }, { "texelFetch", TYPE_VEC4, { TYPE_SAMPLER2D, TYPE_IVEC2, TYPE_INT, TYPE_VOID } }, @@ -2308,9 +2334,17 @@ ShaderLanguage::Node *ShaderLanguage::_parse_expression(BlockNode *p_block, cons bool ok = _parse_function_arguments(p_block, p_builtin_types, func, &carg); + //test if function was parsed first for (int i = 0; i < shader->functions.size(); i++) { if (shader->functions[i].name == name) { - shader->functions[i].uses_function.insert(name); + //add to current function as dependency + for (int j = 0; j < shader->functions.size(); j++) { + if (shader->functions[j].name == current_function) { + shader->functions[j].uses_function.insert(name); + break; + } + } + break; } } @@ -2514,18 +2548,7 @@ ShaderLanguage::Node *ShaderLanguage::_parse_expression(BlockNode *p_block, cons } } break; - case TYPE_MAT2: - ok = (ident == "x" || ident == "y"); - member_type = TYPE_VEC2; - break; - case TYPE_MAT3: - ok = (ident == "x" || ident == "y" || ident == "z"); - member_type = TYPE_VEC3; - break; - case TYPE_MAT4: - ok = (ident == "x" || ident == "y" || ident == "z" || ident == "w"); - member_type = TYPE_VEC4; - break; + default: {} } @@ -2552,6 +2575,116 @@ ShaderLanguage::Node *ShaderLanguage::_parse_expression(BlockNode *p_block, cons //creates a subindexing expression in place */ + } else if (tk.type == TK_BRACKET_OPEN) { + + Node *index = _parse_and_reduce_expression(p_block, p_builtin_types); + + if (index->get_datatype() != TYPE_INT && index->get_datatype() != TYPE_UINT) { + _set_error("Only integer datatypes are allowed for indexing"); + return NULL; + } + + bool index_valid = false; + DataType member_type; + + switch (expr->get_datatype()) { + case TYPE_BVEC2: + case TYPE_VEC2: + case TYPE_IVEC2: + case TYPE_UVEC2: + case TYPE_MAT2: + if (index->type == Node::TYPE_CONSTANT) { + uint32_t index_constant = static_cast<ConstantNode *>(index)->values[0].uint; + if (index_constant >= 2) { + _set_error("Index out of range (0-1)"); + return NULL; + } + } else { + _set_error("Only integer constants are allowed as index at the moment"); + return NULL; + } + index_valid = true; + switch (expr->get_datatype()) { + case TYPE_BVEC2: member_type = TYPE_BOOL; break; + case TYPE_VEC2: member_type = TYPE_FLOAT; break; + case TYPE_IVEC2: member_type = TYPE_INT; break; + case TYPE_UVEC2: member_type = TYPE_UINT; break; + case TYPE_MAT2: member_type = TYPE_VEC2; break; + } + + break; + case TYPE_BVEC3: + case TYPE_VEC3: + case TYPE_IVEC3: + case TYPE_UVEC3: + case TYPE_MAT3: + if (index->type == Node::TYPE_CONSTANT) { + uint32_t index_constant = static_cast<ConstantNode *>(index)->values[0].uint; + if (index_constant >= 3) { + _set_error("Index out of range (0-2)"); + return NULL; + } + } else { + _set_error("Only integer constants are allowed as index at the moment"); + return NULL; + } + index_valid = true; + switch (expr->get_datatype()) { + case TYPE_BVEC3: member_type = TYPE_BOOL; break; + case TYPE_VEC3: member_type = TYPE_FLOAT; break; + case TYPE_IVEC3: member_type = TYPE_INT; break; + case TYPE_UVEC3: member_type = TYPE_UINT; break; + case TYPE_MAT3: member_type = TYPE_VEC3; break; + } + break; + case TYPE_BVEC4: + case TYPE_VEC4: + case TYPE_IVEC4: + case TYPE_UVEC4: + case TYPE_MAT4: + if (index->type == Node::TYPE_CONSTANT) { + uint32_t index_constant = static_cast<ConstantNode *>(index)->values[0].uint; + if (index_constant >= 4) { + _set_error("Index out of range (0-3)"); + return NULL; + } + } else { + _set_error("Only integer constants are allowed as index at the moment"); + return NULL; + } + index_valid = true; + switch (expr->get_datatype()) { + case TYPE_BVEC4: member_type = TYPE_BOOL; break; + case TYPE_VEC4: member_type = TYPE_FLOAT; break; + case TYPE_IVEC4: member_type = TYPE_INT; break; + case TYPE_UVEC4: member_type = TYPE_UINT; break; + case TYPE_MAT4: member_type = TYPE_VEC4; break; + } + break; + default: { + _set_error("Object of type '" + get_datatype_name(expr->get_datatype()) + "' can't be indexed"); + return NULL; + } + } + + if (!index_valid) { + _set_error("Invalid index"); + return NULL; + } + + OperatorNode *op = alloc_node<OperatorNode>(); + op->op = OP_INDEX; + op->return_cache = member_type; + op->arguments.push_back(expr); + op->arguments.push_back(index); + expr = op; + + tk = _get_token(); + if (tk.type != TK_BRACKET_CLOSE) { + _set_error("Expected ']' after indexing expression"); + return NULL; + } + } else if (tk.type == TK_OP_INCREMENT || tk.type == TK_OP_DECREMENT) { OperatorNode *op = alloc_node<OperatorNode>(); @@ -3077,6 +3210,52 @@ Error ShaderLanguage::_parse_block(BlockNode *p_block, const Map<StringName, Dat _set_tkpos(pos); //rollback } + } else if (tk.type == TK_CF_RETURN) { + + //check return type + BlockNode *b = p_block; + while (b && !b->parent_function) { + b = b->parent_block; + } + + if (!b) { + _set_error("Bug"); + return ERR_BUG; + } + + ControlFlowNode *flow = alloc_node<ControlFlowNode>(); + flow->flow_op = FLOW_OP_RETURN; + + pos = _get_tkpos(); + tk = _get_token(); + if (tk.type == TK_SEMICOLON) { + //all is good + if (b->parent_function->return_type != TYPE_VOID) { + _set_error("Expected return with expression of type '" + get_datatype_name(b->parent_function->return_type) + "'"); + return ERR_PARSE_ERROR; + } + } else { + _set_tkpos(pos); //rollback, wants expression + Node *expr = _parse_and_reduce_expression(p_block, p_builtin_types); + if (!expr) + return ERR_PARSE_ERROR; + + if (b->parent_function->return_type != expr->get_datatype()) { + _set_error("Expected return expression of type '" + get_datatype_name(b->parent_function->return_type) + "'"); + return ERR_PARSE_ERROR; + } + + tk = _get_token(); + if (tk.type != TK_SEMICOLON) { + _set_error("Expected ';' after return expression"); + return ERR_PARSE_ERROR; + } + + flow->expressions.push_back(expr); + } + + p_block->statements.push_back(flow); + } else { //nothng else, so expression @@ -3100,10 +3279,47 @@ Error ShaderLanguage::_parse_block(BlockNode *p_block, const Map<StringName, Dat return OK; } -Error ShaderLanguage::_parse_shader(const Map<StringName, Map<StringName, DataType> > &p_functions, const Set<String> &p_render_modes) { +Error ShaderLanguage::_parse_shader(const Map<StringName, Map<StringName, DataType> > &p_functions, const Set<String> &p_render_modes, const Set<String> &p_shader_types) { Token tk = _get_token(); + if (tk.type != TK_SHADER_TYPE) { + _set_error("Expected 'shader_type' at the begining of shader."); + return ERR_PARSE_ERROR; + } + + tk = _get_token(); + + if (tk.type != TK_IDENTIFIER) { + _set_error("Expected identifier after 'shader_type', indicating type of shader."); + return ERR_PARSE_ERROR; + } + + String shader_type_identifier; + + shader_type_identifier = tk.text; + + if (!p_shader_types.has(shader_type_identifier)) { + + String valid; + for (Set<String>::Element *E = p_shader_types.front(); E; E = E->next()) { + if (valid != String()) { + valid += ", "; + } + valid += "'" + E->get() + "'"; + } + _set_error("Invalid shader type, valid types are: " + valid); + return ERR_PARSE_ERROR; + } + + tk = _get_token(); + + if (tk.type != TK_SEMICOLON) { + _set_error("Expected ';' after 'shader_type <type>'."); + } + + tk = _get_token(); + int texture_uniforms = 0; int uniforms = 0; @@ -3428,6 +3644,19 @@ Error ShaderLanguage::_parse_shader(const Map<StringName, Map<StringName, DataTy break; } + ArgumentQualifier qualifier = ARGUMENT_QUALIFIER_IN; + + if (tk.type == TK_ARG_IN) { + qualifier = ARGUMENT_QUALIFIER_IN; + tk = _get_token(); + } else if (tk.type == TK_ARG_OUT) { + qualifier = ARGUMENT_QUALIFIER_OUT; + tk = _get_token(); + } else if (tk.type == TK_ARG_INOUT) { + qualifier = ARGUMENT_QUALIFIER_INOUT; + tk = _get_token(); + } + DataType ptype; StringName pname; DataPrecision pprecision = PRECISION_DEFAULT; @@ -3466,6 +3695,7 @@ Error ShaderLanguage::_parse_shader(const Map<StringName, Map<StringName, DataTy arg.type = ptype; arg.name = pname; arg.precision = pprecision; + arg.qualifier = qualifier; func_node->arguments.push_back(arg); @@ -3515,7 +3745,42 @@ Error ShaderLanguage::_parse_shader(const Map<StringName, Map<StringName, DataTy return OK; } -Error ShaderLanguage::compile(const String &p_code, const Map<StringName, Map<StringName, DataType> > &p_functions, const Set<String> &p_render_modes) { +String ShaderLanguage::get_shader_type(const String &p_code) { + + bool reading_type = false; + + String cur_identifier; + + for (int i = 0; i < p_code.length() + 1; i++) { + + if (p_code[i] == ';') { + break; + + } else if (p_code[i] <= 32) { + if (cur_identifier != String()) { + if (!reading_type) { + if (cur_identifier != "shader_type") { + return String(); + } + + reading_type = true; + cur_identifier = String(); + } else { + return cur_identifier; + } + } + } else { + cur_identifier += String::chr(p_code[i]); + } + } + + if (reading_type) + return cur_identifier; + + return String(); +} + +Error ShaderLanguage::compile(const String &p_code, const Map<StringName, Map<StringName, DataType> > &p_functions, const Set<String> &p_render_modes, const Set<String> &p_shader_types) { clear(); @@ -3524,7 +3789,7 @@ Error ShaderLanguage::compile(const String &p_code, const Map<StringName, Map<St nodes = NULL; shader = alloc_node<ShaderNode>(); - Error err = _parse_shader(p_functions, p_render_modes); + Error err = _parse_shader(p_functions, p_render_modes, p_shader_types); if (err != OK) { return err; @@ -3532,7 +3797,7 @@ Error ShaderLanguage::compile(const String &p_code, const Map<StringName, Map<St return OK; } -Error ShaderLanguage::complete(const String &p_code, const Map<StringName, Map<StringName, DataType> > &p_functions, const Set<String> &p_render_modes, List<String> *r_options, String &r_call_hint) { +Error ShaderLanguage::complete(const String &p_code, const Map<StringName, Map<StringName, DataType> > &p_functions, const Set<String> &p_render_modes, const Set<String> &p_shader_types, List<String> *r_options, String &r_call_hint) { clear(); @@ -3541,7 +3806,7 @@ Error ShaderLanguage::complete(const String &p_code, const Map<StringName, Map<S nodes = NULL; shader = alloc_node<ShaderNode>(); - Error err = _parse_shader(p_functions, p_render_modes); + Error err = _parse_shader(p_functions, p_render_modes, p_shader_types); switch (completion_type) { diff --git a/servers/visual/shader_language.h b/servers/visual/shader_language.h index a4757e3419..c92cbf2abb 100644 --- a/servers/visual/shader_language.h +++ b/servers/visual/shader_language.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -130,6 +131,9 @@ public: TK_PERIOD, TK_UNIFORM, TK_VARYING, + TK_ARG_IN, + TK_ARG_OUT, + TK_ARG_INOUT, TK_RENDER_MODE, TK_HINT_WHITE_TEXTURE, TK_HINT_BLACK_TEXTURE, @@ -139,6 +143,7 @@ public: TK_HINT_BLACK_ALBEDO_TEXTURE, TK_HINT_COLOR, TK_HINT_RANGE, + TK_SHADER_TYPE, TK_CURSOR, TK_ERROR, TK_EOF, @@ -227,6 +232,7 @@ public: OP_POST_DECREMENT, OP_CALL, OP_CONSTRUCT, + OP_INDEX, OP_MAX }; @@ -242,6 +248,13 @@ public: }; + enum ArgumentQualifier { + ARGUMENT_QUALIFIER_IN, + ARGUMENT_QUALIFIER_OUT, + ARGUMENT_QUALIFIER_INOUT, + + }; + struct Node { Node *next; @@ -363,6 +376,7 @@ public: struct Argument { + ArgumentQualifier qualifier; StringName name; DataType type; DataPrecision precision; @@ -577,14 +591,16 @@ private: Error _parse_block(BlockNode *p_block, const Map<StringName, DataType> &p_builtin_types, bool p_just_one = false, bool p_can_break = false, bool p_can_continue = false); - Error _parse_shader(const Map<StringName, Map<StringName, DataType> > &p_functions, const Set<String> &p_render_modes); + Error _parse_shader(const Map<StringName, Map<StringName, DataType> > &p_functions, const Set<String> &p_render_modes, const Set<String> &p_shader_types); public: //static void get_keyword_list(ShaderType p_type,List<String> *p_keywords); void clear(); - Error compile(const String &p_code, const Map<StringName, Map<StringName, DataType> > &p_functions, const Set<String> &p_render_modes); - Error complete(const String &p_code, const Map<StringName, Map<StringName, DataType> > &p_functions, const Set<String> &p_render_modes, List<String> *r_options, String &r_call_hint); + + static String get_shader_type(const String &p_code); + Error compile(const String &p_code, const Map<StringName, Map<StringName, DataType> > &p_functions, const Set<String> &p_render_modes, const Set<String> &p_shader_types); + Error complete(const String &p_code, const Map<StringName, Map<StringName, DataType> > &p_functions, const Set<String> &p_render_modes, const Set<String> &p_shader_types, List<String> *r_options, String &r_call_hint); String get_error_text(); int get_error_line(); diff --git a/servers/visual/shader_types.cpp b/servers/visual/shader_types.cpp index c5e31b235a..cbde41427c 100644 --- a/servers/visual/shader_types.cpp +++ b/servers/visual/shader_types.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -38,6 +39,10 @@ const Set<String> &ShaderTypes::get_modes(VS::ShaderMode p_mode) { return shader_modes[p_mode].modes; } +const Set<String> &ShaderTypes::get_types() { + return shader_types; +} + ShaderTypes *ShaderTypes::singleton = NULL; ShaderTypes::ShaderTypes() { @@ -61,11 +66,14 @@ ShaderTypes::ShaderTypes() { shader_modes[VS::SHADER_SPATIAL].functions["vertex"]["COLOR"] = ShaderLanguage::TYPE_VEC4; shader_modes[VS::SHADER_SPATIAL].functions["vertex"]["POINT_SIZE"] = ShaderLanguage::TYPE_FLOAT; shader_modes[VS::SHADER_SPATIAL].functions["vertex"]["INSTANCE_ID"] = ShaderLanguage::TYPE_INT; + shader_modes[VS::SHADER_SPATIAL].functions["vertex"]["INSTANCE_CUSTOM"] = ShaderLanguage::TYPE_VEC4; //builtins shader_modes[VS::SHADER_SPATIAL].functions["vertex"]["WORLD_MATRIX"] = ShaderLanguage::TYPE_MAT4; shader_modes[VS::SHADER_SPATIAL].functions["vertex"]["INV_CAMERA_MATRIX"] = ShaderLanguage::TYPE_MAT4; + shader_modes[VS::SHADER_SPATIAL].functions["vertex"]["CAMERA_MATRIX"] = ShaderLanguage::TYPE_MAT4; shader_modes[VS::SHADER_SPATIAL].functions["vertex"]["PROJECTION_MATRIX"] = ShaderLanguage::TYPE_MAT4; + shader_modes[VS::SHADER_SPATIAL].functions["vertex"]["MODELVIEW_MATRIX"] = ShaderLanguage::TYPE_MAT4; shader_modes[VS::SHADER_SPATIAL].functions["vertex"]["TIME"] = ShaderLanguage::TYPE_FLOAT; shader_modes[VS::SHADER_SPATIAL].functions["vertex"]["VIEWPORT_SIZE"] = ShaderLanguage::TYPE_VEC2; @@ -122,7 +130,7 @@ ShaderTypes::ShaderTypes() { shader_modes[VS::SHADER_SPATIAL].modes.insert("unshaded"); shader_modes[VS::SHADER_SPATIAL].modes.insert("ontop"); - shader_modes[VS::SHADER_SPATIAL].modes.insert("skip_transform"); + shader_modes[VS::SHADER_SPATIAL].modes.insert("skip_default_transform"); /************ CANVAS ITEM **************************/ @@ -136,6 +144,7 @@ ShaderTypes::ShaderTypes() { shader_modes[VS::SHADER_CANVAS_ITEM].functions["vertex"]["PROJECTION_MATRIX"] = ShaderLanguage::TYPE_MAT4; shader_modes[VS::SHADER_CANVAS_ITEM].functions["vertex"]["EXTRA_MATRIX"] = ShaderLanguage::TYPE_MAT4; shader_modes[VS::SHADER_CANVAS_ITEM].functions["vertex"]["TIME"] = ShaderLanguage::TYPE_FLOAT; + shader_modes[VS::SHADER_CANVAS_ITEM].functions["vertex"]["PARTICLE_CUSTOM"] = ShaderLanguage::TYPE_VEC4; shader_modes[VS::SHADER_CANVAS_ITEM].functions["fragment"]["SRC_COLOR"] = ShaderLanguage::TYPE_VEC4; shader_modes[VS::SHADER_CANVAS_ITEM].functions["fragment"]["POSITION"] = ShaderLanguage::TYPE_VEC2; @@ -189,14 +198,21 @@ ShaderTypes::ShaderTypes() { shader_modes[VS::SHADER_PARTICLES].functions["vertex"]["RESTART"] = ShaderLanguage::TYPE_BOOL; shader_modes[VS::SHADER_PARTICLES].functions["vertex"]["CUSTOM"] = ShaderLanguage::TYPE_VEC4; shader_modes[VS::SHADER_PARTICLES].functions["vertex"]["TRANSFORM"] = ShaderLanguage::TYPE_MAT4; - shader_modes[VS::SHADER_PARTICLES].functions["vertex"]["TIME"] = ShaderLanguage::TYPE_FLOAT; + shader_modes[VS::SHADER_PARTICLES].functions["vertex"]["TIME"] = ShaderLanguage::TYPE_VEC4; shader_modes[VS::SHADER_PARTICLES].functions["vertex"]["LIFETIME"] = ShaderLanguage::TYPE_FLOAT; shader_modes[VS::SHADER_PARTICLES].functions["vertex"]["DELTA"] = ShaderLanguage::TYPE_FLOAT; - shader_modes[VS::SHADER_PARTICLES].functions["vertex"]["SEED"] = ShaderLanguage::TYPE_BOOL; - shader_modes[VS::SHADER_PARTICLES].functions["vertex"]["ORIGIN"] = ShaderLanguage::TYPE_MAT4; + shader_modes[VS::SHADER_PARTICLES].functions["vertex"]["NUMBER"] = ShaderLanguage::TYPE_UINT; shader_modes[VS::SHADER_PARTICLES].functions["vertex"]["INDEX"] = ShaderLanguage::TYPE_INT; + shader_modes[VS::SHADER_PARTICLES].functions["vertex"]["SEED"] = ShaderLanguage::TYPE_UINT; + shader_modes[VS::SHADER_PARTICLES].functions["vertex"]["GRAVITY"] = ShaderLanguage::TYPE_VEC3; + shader_modes[VS::SHADER_PARTICLES].functions["vertex"]["EMISSION_TRANSFORM"] = ShaderLanguage::TYPE_MAT4; shader_modes[VS::SHADER_PARTICLES].modes.insert("billboard"); shader_modes[VS::SHADER_PARTICLES].modes.insert("disable_force"); shader_modes[VS::SHADER_PARTICLES].modes.insert("disable_velocity"); + shader_modes[VS::SHADER_PARTICLES].modes.insert("keep_data"); + + shader_types.insert("spatial"); + shader_types.insert("canvas_item"); + shader_types.insert("particles"); } diff --git a/servers/visual/shader_types.h b/servers/visual/shader_types.h index 1bddde8c82..b8cbabeec1 100644 --- a/servers/visual/shader_types.h +++ b/servers/visual/shader_types.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -43,11 +44,14 @@ class ShaderTypes { static ShaderTypes *singleton; + Set<String> shader_types; + public: static ShaderTypes *get_singleton() { return singleton; } const Map<StringName, Map<StringName, ShaderLanguage::DataType> > &get_functions(VS::ShaderMode p_mode); const Set<String> &get_modes(VS::ShaderMode p_mode); + const Set<String> &get_types(); ShaderTypes(); }; diff --git a/servers/visual/visual_server_canvas.cpp b/servers/visual/visual_server_canvas.cpp index 40fa779170..ecd1b24826 100644 --- a/servers/visual/visual_server_canvas.cpp +++ b/servers/visual/visual_server_canvas.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/visual/visual_server_canvas.h b/servers/visual/visual_server_canvas.h index 3c2dde17d5..47b057f96a 100644 --- a/servers/visual/visual_server_canvas.h +++ b/servers/visual/visual_server_canvas.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/visual/visual_server_global.cpp b/servers/visual/visual_server_global.cpp index 75506f7add..a0f118dd67 100644 --- a/servers/visual/visual_server_global.cpp +++ b/servers/visual/visual_server_global.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/visual/visual_server_global.h b/servers/visual/visual_server_global.h index d55059cd55..079f03f1b1 100644 --- a/servers/visual/visual_server_global.h +++ b/servers/visual/visual_server_global.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/visual/visual_server_light_baker.cpp b/servers/visual/visual_server_light_baker.cpp index 493eeb49ca..67048eb54e 100644 --- a/servers/visual/visual_server_light_baker.cpp +++ b/servers/visual/visual_server_light_baker.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/visual/visual_server_light_baker.h b/servers/visual/visual_server_light_baker.h index 82909bb082..218c42bb1b 100644 --- a/servers/visual/visual_server_light_baker.h +++ b/servers/visual/visual_server_light_baker.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/visual/visual_server_raster.cpp b/servers/visual/visual_server_raster.cpp index 2666a95595..93a2b67088 100644 --- a/servers/visual/visual_server_raster.cpp +++ b/servers/visual/visual_server_raster.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -38,6 +39,8 @@ // careful, these may run in different threads than the visual server +int VisualServerRaster::changes = 0; + /* CURSOR */ void VisualServerRaster::cursor_set_rotation(float p_rotation, int p_cursor) { } @@ -391,33 +394,33 @@ RID VisualServerRaster::fixed_material_create() { return rasterizer->fixed_material_create(); } -void VisualServerRaster::fixed_material_set_flag(RID p_material, FixedSpatialMaterialFlags p_flag, bool p_enabled) { +void VisualServerRaster::fixed_material_set_flag(RID p_material, SpatialMaterialFlags p_flag, bool p_enabled) { rasterizer->fixed_material_set_flag(p_material,p_flag,p_enabled); } -bool VisualServerRaster::fixed_material_get_flag(RID p_material, FixedSpatialMaterialFlags p_flag) const { +bool VisualServerRaster::fixed_material_get_flag(RID p_material, SpatialMaterialFlags p_flag) const { return rasterizer->fixed_material_get_flag(p_material,p_flag); } -void VisualServerRaster::fixed_material_set_param(RID p_material, FixedSpatialMaterialParam p_parameter, const Variant& p_value) { +void VisualServerRaster::fixed_material_set_param(RID p_material, SpatialMaterialParam p_parameter, const Variant& p_value) { VS_CHANGED; rasterizer->fixed_material_set_parameter(p_material,p_parameter,p_value); } -Variant VisualServerRaster::fixed_material_get_param(RID p_material,FixedSpatialMaterialParam p_parameter) const { +Variant VisualServerRaster::fixed_material_get_param(RID p_material,SpatialMaterialParam p_parameter) const { return rasterizer->fixed_material_get_parameter(p_material,p_parameter); } -void VisualServerRaster::fixed_material_set_texture(RID p_material,FixedSpatialMaterialParam p_parameter, RID p_texture) { +void VisualServerRaster::fixed_material_set_texture(RID p_material,SpatialMaterialParam p_parameter, RID p_texture) { VS_CHANGED; rasterizer->fixed_material_set_texture(p_material,p_parameter,p_texture); } -RID VisualServerRaster::fixed_material_get_texture(RID p_material,FixedSpatialMaterialParam p_parameter) const { +RID VisualServerRaster::fixed_material_get_texture(RID p_material,SpatialMaterialParam p_parameter) const { return rasterizer->fixed_material_get_texture(p_material,p_parameter); } @@ -425,12 +428,12 @@ RID VisualServerRaster::fixed_material_get_texture(RID p_material,FixedSpatialMa -void VisualServerRaster::fixed_material_set_texcoord_mode(RID p_material,FixedSpatialMaterialParam p_parameter, FixedSpatialMaterialTexCoordMode p_mode) { +void VisualServerRaster::fixed_material_set_texcoord_mode(RID p_material,SpatialMaterialParam p_parameter, SpatialMaterialTexCoordMode p_mode) { VS_CHANGED; rasterizer->fixed_material_set_texcoord_mode(p_material,p_parameter,p_mode); } -VS::FixedSpatialMaterialTexCoordMode VisualServerRaster::fixed_material_get_texcoord_mode(RID p_material,FixedSpatialMaterialParam p_parameter) const { +VS::SpatialMaterialTexCoordMode VisualServerRaster::fixed_material_get_texcoord_mode(RID p_material,SpatialMaterialParam p_parameter) const { return rasterizer->fixed_material_get_texcoord_mode(p_material,p_parameter); } @@ -457,14 +460,14 @@ Transform VisualServerRaster::fixed_material_get_uv_transform(RID p_material) co return rasterizer->fixed_material_get_uv_transform(p_material); } -void VisualServerRaster::fixed_material_set_light_shader(RID p_material,FixedSpatialMaterialLightShader p_shader) { +void VisualServerRaster::fixed_material_set_light_shader(RID p_material,SpatialMaterialLightShader p_shader) { VS_CHANGED; rasterizer->fixed_material_set_light_shader(p_material,p_shader); } -VisualServerRaster::FixedSpatialMaterialLightShader VisualServerRaster::fixed_material_get_light_shader(RID p_material) const{ +VisualServerRaster::SpatialMaterialLightShader VisualServerRaster::fixed_material_get_light_shader(RID p_material) const{ return rasterizer->fixed_material_get_light_shader(p_material); } @@ -4521,7 +4524,7 @@ void VisualServerRaster::canvas_occluder_polygon_set_cull_mode(RID p_occluder_po RID VisualServerRaster::canvas_item_material_create() { - Rasterizer::CanvasItemMaterial *material = memnew( Rasterizer::CanvasItemMaterial ); + Rasterizer::ShaderMaterial *material = memnew( Rasterizer::ShaderMaterial ); return canvas_item_material_owner.make_rid(material); } @@ -4529,7 +4532,7 @@ RID VisualServerRaster::canvas_item_material_create() { void VisualServerRaster::canvas_item_material_set_shader(RID p_material, RID p_shader){ VS_CHANGED; - Rasterizer::CanvasItemMaterial *material = canvas_item_material_owner.get( p_material ); + Rasterizer::ShaderMaterial *material = canvas_item_material_owner.get( p_material ); ERR_FAIL_COND(!material); material->shader=p_shader; @@ -4537,7 +4540,7 @@ void VisualServerRaster::canvas_item_material_set_shader(RID p_material, RID p_s void VisualServerRaster::canvas_item_material_set_shader_param(RID p_material, const StringName& p_param, const Variant& p_value){ VS_CHANGED; - Rasterizer::CanvasItemMaterial *material = canvas_item_material_owner.get( p_material ); + Rasterizer::ShaderMaterial *material = canvas_item_material_owner.get( p_material ); ERR_FAIL_COND(!material); if (p_value.get_type()==Variant::NIL) material->shader_param.erase(p_param); @@ -4547,7 +4550,7 @@ void VisualServerRaster::canvas_item_material_set_shader_param(RID p_material, c } Variant VisualServerRaster::canvas_item_material_get_shader_param(RID p_material, const StringName& p_param) const{ - Rasterizer::CanvasItemMaterial *material = canvas_item_material_owner.get( p_material ); + Rasterizer::ShaderMaterial *material = canvas_item_material_owner.get( p_material ); ERR_FAIL_COND_V(!material,Variant()); if (!material->shader_param.has(p_param)) { ERR_FAIL_COND_V(!material->shader.is_valid(),Variant()); @@ -4560,7 +4563,7 @@ Variant VisualServerRaster::canvas_item_material_get_shader_param(RID p_material void VisualServerRaster::canvas_item_material_set_shading_mode(RID p_material, CanvasItemShadingMode p_mode) { VS_CHANGED; - Rasterizer::CanvasItemMaterial *material = canvas_item_material_owner.get( p_material ); + Rasterizer::ShaderMaterial *material = canvas_item_material_owner.get( p_material ); ERR_FAIL_COND(!material); material->shading_mode=p_mode; @@ -4869,7 +4872,7 @@ void VisualServerRaster::free( RID p_rid ) { } else if (canvas_item_material_owner.owns(p_rid)) { - Rasterizer::CanvasItemMaterial *material = canvas_item_material_owner.get(p_rid); + Rasterizer::ShaderMaterial *material = canvas_item_material_owner.get(p_rid); ERR_FAIL_COND(!material); for(Set<Rasterizer::CanvasItem*>::Element *E=material->owners.front();E;E=E->next()) { diff --git a/servers/visual/visual_server_raster.h b/servers/visual/visual_server_raster.h index 58e07057f2..11f6d58f95 100644 --- a/servers/visual/visual_server_raster.h +++ b/servers/visual/visual_server_raster.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -56,7 +57,7 @@ class VisualServerRaster : public VisualServer { }; - int changes; + static int changes; bool draw_extra_frame; RID test_cube; @@ -376,7 +377,7 @@ class VisualServerRaster : public VisualServer { - mutable RID_Owner<Rasterizer::CanvasItemMaterial> canvas_item_material_owner; + mutable RID_Owner<Rasterizer::ShaderMaterial> canvas_item_material_owner; @@ -575,6 +576,8 @@ class VisualServerRaster : public VisualServer { #endif public: + _FORCE_INLINE_ static void redraw_request() { changes++; } + #define DISPLAY_CHANGED changes++; #define BIND0R(m_r, m_name) \ @@ -647,10 +650,7 @@ public: /* SHADER API */ - BIND1R(RID, shader_create, ShaderMode) - - BIND2(shader_set_mode, RID, ShaderMode) - BIND1RC(ShaderMode, shader_get_mode, RID) + BIND0R(RID, shader_create) BIND2(shader_set_code, RID, const String &) BIND1RC(String, shader_get_code, RID) @@ -855,16 +855,12 @@ public: BIND2(particles_set_gravity, RID, const Vector3 &) BIND2(particles_set_use_local_coordinates, RID, bool) BIND2(particles_set_process_material, RID, RID) - - BIND2(particles_set_emission_shape, RID, VS::ParticlesEmissionShape) - BIND2(particles_set_emission_sphere_radius, RID, float) - BIND2(particles_set_emission_box_extents, RID, const Vector3 &) - BIND2(particles_set_emission_points, RID, const PoolVector<Vector3> &) + BIND2(particles_set_fixed_fps, RID, int) + BIND2(particles_set_fractional_delta, RID, bool) BIND2(particles_set_draw_order, RID, VS::ParticlesDrawOrder) BIND2(particles_set_draw_passes, RID, int) - BIND3(particles_set_draw_pass_material, RID, int, RID) BIND3(particles_set_draw_pass_mesh, RID, int, RID) BIND1R(Rect3, particles_get_current_aabb, RID); diff --git a/servers/visual/visual_server_scene.cpp b/servers/visual/visual_server_scene.cpp index 9b77ca9e1c..b905b230dc 100644 --- a/servers/visual/visual_server_scene.cpp +++ b/servers/visual/visual_server_scene.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -29,6 +30,7 @@ #include "visual_server_scene.h" #include "os/os.h" #include "visual_server_global.h" +#include "visual_server_raster.h" /* CAMERA API */ RID VisualServerScene::camera_create() { @@ -609,7 +611,8 @@ void VisualServerScene::instance_set_base(RID p_instance, RID p_base) { } break; case VS::INSTANCE_MESH: case VS::INSTANCE_MULTIMESH: - case VS::INSTANCE_IMMEDIATE: { + case VS::INSTANCE_IMMEDIATE: + case VS::INSTANCE_PARTICLES: { InstanceGeometryData *geom = memnew(InstanceGeometryData); instance->base_data = geom; @@ -975,16 +978,6 @@ void VisualServerScene::instance_geometry_set_flag(RID p_instance, VS::InstanceF switch (p_flags) { - case VS::INSTANCE_FLAG_BILLBOARD: { - - instance->billboard = p_enabled; - - } break; - case VS::INSTANCE_FLAG_BILLBOARD_FIX_Y: { - - instance->billboard_y = p_enabled; - - } break; case VS::INSTANCE_FLAG_CAST_SHADOW: { if (p_enabled == true) { instance->cast_shadows = VS::SHADOW_CASTING_SETTING_ON; @@ -995,11 +988,6 @@ void VisualServerScene::instance_geometry_set_flag(RID p_instance, VS::InstanceF instance->base_material_changed(); // to actually compute if shadows are visible or not } break; - case VS::INSTANCE_FLAG_DEPH_SCALE: { - - instance->depth_scale = p_enabled; - - } break; case VS::INSTANCE_FLAG_VISIBLE_IN_ALL_ROOMS: { instance->visible_in_all_rooms = p_enabled; @@ -1050,6 +1038,11 @@ void VisualServerScene::_update_instance(Instance *p_instance) { reflection_probe->reflection_dirty = true; } + if (p_instance->base_type == VS::INSTANCE_PARTICLES) { + + VSG::storage->particles_set_emission_transform(p_instance->base, p_instance->transform); + } + if (p_instance->aabb.has_no_surface()) return; @@ -1235,6 +1228,11 @@ void VisualServerScene::_update_instance_aabb(Instance *p_instance) { new_aabb = VSG::storage->immediate_get_aabb(p_instance->base); } break; + case VisualServer::INSTANCE_PARTICLES: { + + new_aabb = VSG::storage->particles_get_aabb(p_instance->base); + + } break; #if 0 case VisualServer::INSTANCE_PARTICLES: { @@ -1914,6 +1912,13 @@ void VisualServerScene::_render_scene(const Transform p_cam_transform, const Cam InstanceGeometryData *geom = static_cast<InstanceGeometryData *>(ins->base_data); + if (ins->base_type == VS::INSTANCE_PARTICLES) { + //particles visible? process them + VSG::storage->particles_request_process(ins->base); + //particles visible? request redraw + VisualServerRaster::redraw_request(); + } + if (geom->lighting_dirty) { int l = 0; //only called when lights AABB enter/exit this geometry diff --git a/servers/visual/visual_server_scene.h b/servers/visual/visual_server_scene.h index b02e6c820b..1aab624654 100644 --- a/servers/visual/visual_server_scene.h +++ b/servers/visual/visual_server_scene.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/visual/visual_server_viewport.cpp b/servers/visual/visual_server_viewport.cpp index 7b8a725c5a..63ed0ac7c4 100644 --- a/servers/visual/visual_server_viewport.cpp +++ b/servers/visual/visual_server_viewport.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/visual/visual_server_viewport.h b/servers/visual/visual_server_viewport.h index 53ad6bde2b..118d11a111 100644 --- a/servers/visual/visual_server_viewport.h +++ b/servers/visual/visual_server_viewport.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/visual_server.cpp b/servers/visual_server.cpp index a28c409b97..5a7ae93a31 100644 --- a/servers/visual_server.cpp +++ b/servers/visual_server.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/servers/visual_server.h b/servers/visual_server.h index dfa253ff25..04afc6dfaf 100644 --- a/servers/visual_server.h +++ b/servers/visual_server.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -153,10 +154,7 @@ public: SHADER_MAX }; - virtual RID shader_create(ShaderMode p_mode = SHADER_SPATIAL) = 0; - - virtual void shader_set_mode(RID p_shader, ShaderMode p_mode) = 0; - virtual ShaderMode shader_get_mode(RID p_shader) const = 0; + virtual RID shader_create() = 0; virtual void shader_set_code(RID p_shader, const String &p_code) = 0; virtual String shader_get_code(RID p_shader) const = 0; @@ -485,19 +483,8 @@ public: virtual void particles_set_gravity(RID p_particles, const Vector3 &p_gravity) = 0; virtual void particles_set_use_local_coordinates(RID p_particles, bool p_enable) = 0; virtual void particles_set_process_material(RID p_particles, RID p_material) = 0; - - enum ParticlesEmissionShape { - PARTICLES_EMSSION_POINT, - PARTICLES_EMSSION_SPHERE, - PARTICLES_EMSSION_BOX, - PARTICLES_EMSSION_POINTS, - PARTICLES_EMSSION_SEGMENTS, - }; - - virtual void particles_set_emission_shape(RID p_particles, ParticlesEmissionShape) = 0; - virtual void particles_set_emission_sphere_radius(RID p_particles, float p_radius) = 0; - virtual void particles_set_emission_box_extents(RID p_particles, const Vector3 &p_extents) = 0; - virtual void particles_set_emission_points(RID p_particles, const PoolVector<Vector3> &p_points) = 0; + virtual void particles_set_fixed_fps(RID p_particles, int p_fps) = 0; + virtual void particles_set_fractional_delta(RID p_particles, bool p_enable) = 0; enum ParticlesDrawOrder { PARTICLES_DRAW_ORDER_INDEX, @@ -507,13 +494,7 @@ public: virtual void particles_set_draw_order(RID p_particles, ParticlesDrawOrder p_order) = 0; - enum ParticlesDrawPassMode { - PARTICLES_DRAW_PASS_MODE_QUAD, - PARTICLES_DRAW_PASS_MODE_MESH - }; - virtual void particles_set_draw_passes(RID p_particles, int p_count) = 0; - virtual void particles_set_draw_pass_material(RID p_particles, int p_pass, RID p_material) = 0; virtual void particles_set_draw_pass_mesh(RID p_particles, int p_pass, RID p_mesh) = 0; virtual Rect3 particles_get_current_aabb(RID p_particles) = 0; @@ -689,7 +670,7 @@ public: INSTANCE_MAX, /*INSTANCE_BAKED_LIGHT_SAMPLER,*/ - INSTANCE_GEOMETRY_MASK = (1 << INSTANCE_MESH) | (1 << INSTANCE_MULTIMESH) | (1 << INSTANCE_IMMEDIATE) + INSTANCE_GEOMETRY_MASK = (1 << INSTANCE_MESH) | (1 << INSTANCE_MULTIMESH) | (1 << INSTANCE_IMMEDIATE) | (1 << INSTANCE_PARTICLES) }; virtual RID instance_create2(RID p_base, RID p_scenario); @@ -718,10 +699,7 @@ public: virtual Vector<ObjectID> instances_cull_convex(const Vector<Plane> &p_convex, RID p_scenario = RID()) const = 0; enum InstanceFlags { - INSTANCE_FLAG_BILLBOARD, - INSTANCE_FLAG_BILLBOARD_FIX_Y, INSTANCE_FLAG_CAST_SHADOW, - INSTANCE_FLAG_DEPH_SCALE, INSTANCE_FLAG_VISIBLE_IN_ALL_ROOMS, INSTANCE_FLAG_USE_BAKED_LIGHT, INSTANCE_FLAG_MAX diff --git a/thirdparty/enet/enet/godot.h b/thirdparty/enet/enet/godot.h index 8f543966b5..75645153dd 100644 --- a/thirdparty/enet/enet/godot.h +++ b/thirdparty/enet/enet/godot.h @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ diff --git a/thirdparty/enet/godot.cpp b/thirdparty/enet/godot.cpp index e26340092d..f050b7b916 100644 --- a/thirdparty/enet/godot.cpp +++ b/thirdparty/enet/godot.cpp @@ -6,6 +6,7 @@ /* http://www.godotengine.org */ /*************************************************************************/ /* Copyright (c) 2007-2017 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2017 Godot Engine contributors (cf. AUTHORS.md) */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ |